Estoy trabajando en un archivo por lotes de Windows que bcp tres archivos de texto en SQL Server. Si algo sale mal en la producción, quiero poder anular los nombres de los archivos. Así que estoy pensando en hacer algo como esto.Comprobar la variable nula en el lote de Windows
bcp.exe MyDB..MyTable1 in %1 -SMyServer -T -c -m0
bcp.exe MyDB..MyTable2 in %2 -SMyServer -T -c -m0
bcp.exe MyDB..MyTable3 in %3 -SMyServer -T -c -m0
Me gustaría ser capaz de entrar en nombres predeterminados para los tres archivos, que se utilizará si no se suministran los parámetros posicionales. La idea sería o bien para ejecutar
myjob.bat
sin parámetros, y tienen que utilizar los valores por defecto, o ejecutar
myjob.bat "c:\myfile1" "c:\myfile2" "c:\myfile3"
y hacer que usar esos archivos. No he podido averiguar cómo saber si% 1,% 2 y% 3 existen y/o son nulos. Tampoco sé cómo establecer esos valores condicionalmente. es posible? Cualquier sugerencia sera apreciada.
¡Muy bueno para el viento! ¡Gracias! – antivirtel
¿Esto significa 'IF"% 1 "==" "' es malo? – bryc
Sí "% 1" genera un error de sintaxis cuando arg1 tiene comillas, por lo que es mejor usar corchetes. – mosh