iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0

上回我們對mssql-script有了初步的認識,並且透過pip安裝完成,下面我們稍微放慢腳步來發掘mssql-script指令項目已經產出的物件。


首先我們先來介紹mssql-script的基本語法,與sqlcmd一樣,都需要給定目標,項目如下:
-S→伺服器名稱(Server Name)
-U→使用者名稱(User Name)
-P→密碼(Password)
-d→資料庫名稱(DataBase Name)
-f→檔案路徑(FilePath)


將各項目組合後,語法如下:

mssql-scripter -S {Server} -U {User} -P {Password} -d {DataBase} {option} -f {FilePath} 

這邊如果設定的檔案路徑已經有同名的檔案會直接覆蓋掉,若無則會產出新的檔案。


我們以之前產出的FirstDataBase為基準來產出FirstDataBase裡的資料結構以及資料內容的.sql腳本,同樣在我們的本機且不需要帳號密碼,另外從mssql-scripter的選項中選擇--schema-and-data,語法如下:

mssql-scripter -S . -d FirstDataBase --schema-and-data -f C:\temp\FirstDataBase_scripter.sql

執行成功後,我們可以看到在我們設定的路徑上產生了我們指定名稱的.sql腳本,裡面應包含資料表結構以及資料列。


另外我們可以再試試分別只含資料表結構以及資料表內容的語法(不加選項預設為只有資料表結構),語法如下:

mssql-scripter -S . -d FirstDataBase -f C:\temp\FirstDataBase_schema.sql 
mssql-scripter -S . -d FirstDataBase --data-only -f C:\temp\FirstDataBase_data.sql

最後可以在語法內加入--display-progress觀看執行進度,語法如下:

mssql-scripter -S . -d FirstDataBase --display-progress -f C:\temp\FirstDataBase_schema.sql 

到這邊我們已經能初步使用命令列完成產生指令碼功能,不過如果打開腳本看裡面的內容,會發現跟我們原先用SSMS產出的.sql腳本內容有一些不相同,後續我們再一步一步調整直到符合我們需求。

更多小知識,我們下次見~~


上一篇
DAY 11 :mssql-scripter簡介及安裝流程
下一篇
DAY 13 :mssql-scripter選擇項目以及選擇產檔物件
系列文
沒有厲害的頭腦,也能利用腳本實現懶人寫程式的夢想30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言