원격 데이터베이스에 연결하는 다음 SQLCMD에 쿼리를 실행하고이를 CSV 파일로 저장합니다.박쥐 파일 루프에서 SQLCMD 실행 무한히
sqlcmd -S tcp:0.0.0.0,1433 -U user -P pass -d mydb -W -w 999 -s "," -Q "SELECT * FROM dbo.CSVData" -o "C:\wamp\sqlcmd.csv"
명령 프롬프트에서 수동으로 실행하면 정상적으로 작동합니다.
PHP에서 sqlcmd 명령을 실행해야하고 PHP에서 여러 실행 명령을 시도했지만 아무 것도 작동하지 않습니다. 유일한 옵션은 .bat 파일을 사용하고 php를 통해 호출하지만 sqlcmd 명령을 계속 실행하면 (수백 번) 종료됩니다. 나는/wait와 exit를 사용하여 시도했으나 이것은 수백, 수백 개의 명령 프롬프트 창을 열어서 시스템을 정지 시켰습니다. 아래는 내가 시도한 코드입니다. 내가 뭘 잘못하고 있는지 알려줘. 감사.
@echo off
echo Running sqlcmd
start /wait sqlcmd -S tcp:0.0.0.0,1433 -U user -P pass -d mydb -W -w 999 -s "," -Q "SELECT * FROM dbo.CSVData" -o "C:\wamp\sqlcmd.csv"
:exit
cmd 프롬프트에서 배치 파일을 실행 해 보셨습니까? PhP 코드가 루핑되지 않았는지 확인하기 위해? 내가 나열한 배치 파일이 루프를 일으킬 수있는 방법을 모르겠다. –
'start "를 쓰십시오/wait ...'('start'는 첫 번째로 인용 된 문자열을 창 제목으로 해석 할 수 있습니다. 따라서 빈 문자열''"을 명시하면 명시 적으로 하나를 정의하고 명령 줄이 깨지는 문제를 피할 수 있습니다) ... – aschipfl
PHP에서 .bat 파일을 실행하지 않습니다. 난 그냥 두 번 클릭하여 실행 오전 @ 조 C –