❶ 批處理來執行.sql文件或移動文件的位置
執行sql文件如下(保存為.bat即可):
mysql
-h ip地址
--user=用戶名
--password=密碼
--port=埠 資料庫名
<
sql文件名.sql
例如:
mysql
-h localhost
--user=root
--password=root
--port=3306 test
<
123.sql
需要mysql.exe文件,文件我已發送到你的qq郵箱.
❷ 如何使用sqlcmd在批處理腳本中執行SQL
使用sqlcmd可以在批處理腳本中執行SQL。雖然這個命令的參數很多,但幸運的是,我們不需要全部理解,在這里簡要介紹以下幾個: { -U login_id [ -P password ] } | –E trusted connection }] 如果指定了-E就不需要指定用戶名密碼,當然指定了用戶名密碼就不用-E了; -S server_name [ \ instance_name ] 資料庫伺服器,如果不在本機的話必須指定; -d db_name 資料庫名字,必須的; [ -i input_file ] [ -o output_file ] sql存在文件里的話用-i,輸出到文件用-o; [ -q "cmdline query" ] [ -Q "cmdline query" and exit ] 輸入是簡單的sql,不用文件,推薦用-Q,如果你執行完sqlcmd還需要執行別的動作的話; [ -W remove trailing spaces ] 刪除多餘的空格,結果會更緊湊。 當我們在真正的腳本中執行sql時,通常需要傳入和輸出變數。 傳入變數比較簡單,如下所示: sqlcmd -d test -Q "select * from dbo.Investment where investor=$(x)" -v x='IBM' -W 這個語句從test資料庫的Investment表中選出investor等於x的所有行,注意到變數x被包含在${}中。 然後用-v定義了x的值,'IBM'。 -W確定輸出的結果不包含多餘的空格。 x的值如果沒有在sqlcmd中設定,系統會試圖從別的地方去尋找,可能的地方包括,系統環境變數,用戶環境變數,以及用在sqlcmd之前用set設定的變數值。 如果你的數據里確實包含${},那麼你並不希望進行變數的替換,使用-x選項可以禁止變數的替換。 有些時候,你還希望能獲得sql執行結果並保存到變數中。比如你們的日誌系統每天都在產生日誌文件,你要執行一個腳本來處理這些日誌文件並存到資料庫中。在處理之前,你必須讀取資料庫以確定上次處理到那一天了。你期望這樣能解決你的問題: sqlcmd -d test -Q "select ${x}=max(date) from dbo.logDates " -W 但這樣並不工作。因為sqlcmd並不提供輸出變數。 不過你可以這樣做: sqlcmd -d test -Q "declare @x nvarchar(8);select @x=max(date) from dbo.logDates;print @x; " -W 這樣你就可以得到一個乾乾凈凈的數字,而不會包含列名和其他信息。 接著你將上述結果導入到一個文件里: sqlcmd -d test -Q "declare @x nvarchar(8);select @x=max(date) from dbo.logDates;print @x; " -W 1.txt 現在到了最關鍵的一步,將文件的內容寫入到變數里: set /P myvar=<1.txt /p表明這個變數myvar的值需要用戶輸入; <1.txt表明從1.txt中讀入而不是從其他地方讀入。 這樣,我們就巧妙的把sql執行的結果寫入到變數里了。
❸ 怎麼獲取本機 sql server 2000的伺服器名稱 和埠號
打開SQL的服務管理器,上面的服務後面的名字就是SQLSERVER伺服器的名字。
也可以在SQL的服務管理器中運行下列命令:
伺服器名稱<%=Environment.OSVersion.ToString()%>
埠<%=Request.ServerVariables["SERVER_PORT"]%>
❹ sql資料庫 通過批處理.bat來處理執行sql文件
應該還是在雙擊運行的時候缺少路徑所致(python2.7好像也有這個問題)
你試試在批處理中添加一下path變數:
setpath=%path%;x:xxxosql.exe
或者使用osql.exe的時候直接使用全路徑:
"x:xxxosql.exe"-h-sxxxxxxx
❺ 如何查看sql2005資料庫的埠號
1、首先,雙擊桌面上的資料庫運行圖標,打開資料庫軟體SQL2005,進入資料庫主頁面。
❻ 批處理來執行.sql文件或移動文件的位置
執行sql文件如下(保存為.bat即可):mysql -h ip地址 --user=用戶名 --password=密碼 --port=埠 資料庫名 < sql文件名.sql例如:mysql -h localhost --user=root --password=root --port=3306 test < 123.sql 需要mysql.exe文件,文件我已發送到你的qq郵箱.
❼ 批處理文件中如何運行當前目錄下的sql
這是因為對於sqlplus這個命令來說,傳入的文件名必須是全路徑的,要不然無法識別。
所以只需要用%~dp0取得當前批處理所在的路徑,然後再加上文件名就可以了。以下是修改完的代碼,你試試吧。如果還有問題,再問吧。
sqlplus "budget/budget" @"%~dp0run.sql"
echo 資料庫清理完畢!
pause
exit
❽ 求助:在批處理中如何操作sql server資料庫
把要執行的sql放在procSql.sql中,然後用下面的命令即可調用
sqlcmd -S "資料庫服務地址" -U "sa" -P "sa帳號密碼" -d "資料庫名稱" -i "procSql.sql"
❾ bat文件中,如何獲取sql語句的值
我不清楚執行後會顯示什麼內容,只能給您一個大致的方向。自己去研究吧!
for/f"delims="%%ain('echoSELECT2fromeal;^|sqlplusdata/[email protected]:000/dataa')doecho%%a
pause