我一直在嘗試傳遞一個變量值,我可以在命令行中輸入以打開批處理文件,然後將該值傳遞給一個sql腳本。在這種情況下,我正在通過在命令行中設置它來將數據庫用戶的密碼更改爲新密碼。如何通過批處理文件將變量值從命令行傳遞到SQL腳本
命令行 - update_passwords.bat服務器名1234
批處理文件 -
@echo off
set sql_server_name=%1
set newPass=%2
osql -S %1 -U dbuser -P user_pass -v newPass=%2 -i c:\sql_script -o c:\sql_log
sql file -
ALTER LOGIN user1 WITH PASSWORD = %2;
我得到一個不正確的語法附近 '%' 的錯誤,當我運行的批處理文件
任何幫助非常感謝
它看起來像你在頂部設置sql_server_name和newPass並從不使用它們。除此之外,你是否遇到了當前擁有的批處理文件錯誤?如果是這樣,那麼錯誤信息是什麼? – gmm
im在命令行中指定服務器名稱並將其作爲%1傳遞給批處理文件,然後輸入密碼,我希望將db帳戶的密碼更改爲%2。我在'%'錯誤附近得到錯誤的語法。感謝您對我的看法 – MollyMoo
您應該將有關錯誤消息的信息放入問題主體中。 – gmm