1
.BAT
のファイルにSQL文が含まれています。そして、私はこれをストアドプロシージャに変換する方法を理解していません。SQLのcmd文をストアドプロシージャに変換する
これは文です:
ECHO 2, MDCESS_TRAKG_NUM, 1 , 2, dropoff, 3, 4, ORDER_NUM, MERCHANT_ORDER_NUM, MASTER_BARCODE, BARCODE, SERIAL_NUM, 5, NET_WEIGHT, GROSS_WEIGHT, DIM_WEIGHT, DRIVER, TRAILER, DELIVERY_DATE >\\c:\\Manifest.txt
SQLCMD -S SQLSERVEREXPRESS -d MyDb -U sa -P triple -Q "SET NOCOUNT ON select 2 AS '2', ORDE_.billgrp AS ENSENDA_TRAKG_NUM, 1 AS '1', 2 AS '2', dropoff AS dropoff, 3 AS '3', 4 AS '4', orde_.ordernum AS ORDER_NUM, CASE WHEN (Left(daddr,11)='1955 VAUGHN' AND READYDATE=CONVERT(varchar(8),GETDATE(),112)) THEN 'TBLK_ATL_'+ DRV1NUM + '_' + REPLACE(CONVERT(varchar(8),GETDATE(),10) ,'-', '') ELSE left(orde_.ref, 18) END AS MERCHANGE_ORDER_NUM, GFIELD4 AS MASTER_BARCODE, CASE WHEN orde_.CLIENTNUM in ('CDSLOG45', 'NEWAGE20', 'ENATLPEL') THEN orde_.BILLGRP ELSE GFIELD2 END AS BARCODE, left(GFIELD3,30) AS SERIAL_NUM, 5 AS '5', isnull(INVNUM,0) AS NET_WEIGHT,isnull(INVNUM,0) AS GROSS_WEIGHT,isnull(INVNUM,0) AS DIM_WEIGHT, orde_.DRV1NUM AS DRIVER, orde_.CALLER AS TRAILER, CONVERT(VARCHAR(10), orde_.READYDATE, 120) AS DELIVERY_DATE FROM GENERICFIELDS FULL OUTER JOIN ORDE_ ON GENERICFIELDS.ORDERID=ORDE_.ORDERID FULL OUTER JOIN CLIENT ON ORDE_.CLIENTID=CLIENT.CLIENTID WHERE orde_.droptime is null and (GFIELD2 is not null or orde_.CLIENTNUM in ('CDSLOG45', 'NEWAGE20', 'ENATLPEL')) and ORDE_.CANCELLED='0' and dispid in ('65')" -h-1 -b -o "\\ADV\SCANNERMANIFEST.TXT" -s "," -W
copy \\intro\Atlanta5\*.txt \\intro\My.txt /y /b
del \\intro\My.csv
ren \\intro\My.txt My.csv
私は、ストアドプロシージャにこれを変換することができる方法を教えていただけますか?
あなたのリプレイをありがとう。私はSQLCMDのラインに問題があるspでその行を書き直す方法 –
SQL sprocでsqlcmdが必要なのはなぜですか?あなたsproc儀式で直接SQLコマンドをecexuteすることができますか?私はここで違うと理解していますか? –
私は実際に私の選択ステートメントから返されているテキストファイルに値を書きたいと思います。そして私は店の手順からこれを行う必要があります –