こんにちはsqlcmdを使用してクエリを実行したいので、私はsubprocess.call()を使用して呼び出しています。このプロセスは時々動作しますが、ループでは動作しません。それは最後の引数を実行するだけです。下記のサンプルコードは私が試しているものですPythonはsqlcmdを使用してsqlクエリを実行します
import subprocess
host = 'hostname'
db = 'SQLTest'
sqlcmd = "C:\Program Files\Microsoft SQL Server\100\Tools\Binn\SQLCMD.EXE"
query = "INSERT INTO [dbo].[Test](type,ident,lat,long,y_proj,x_proj,new_seg,display,color,altitude,depth,temp,time,model,filename,ltime) VALUES ('TRACK','ACTIVE LOG','40.79015493','-77.85914183','4627311.94501541','1779470.5827101','False','False','255','351.979858398438','0','0','2008/06/11-14:33:33','eTrex Venture','','2008/06/11 09:33:33')"
for x in range (0,5):
subprocess.call([sqlcmd,'-S' ,host, '-d', db, '-Q', query])
その他の方法がありますか?私もpymysqlモジュールを試してみました。しかし、それは認証エラーを示しています。