Mssql other instance db engine, how to set remotly connect.

MSSQL 非預設的資料庫實體 該如何使用資料庫管理工具遠端登入

如果MSSQL SERVER有超過兩個實體,預設的實體可以正常使用1433端口由遠端登入管理。

但是其它資料庫實體該如何遠端登入呢?

先了解另一個資料庫實體是否有啟用TCP通道進行連線,若有該通道是使用靜態連接埠或是系統自動給的動態連接埠

可以執行「資料庫組態管理工具」查詢得知。還有一點就是一般伺服器都會啟用防火牆規則。所以得知另一個資料庫實體的TCP通訊埠後,需要設定防火牆規則讓另一個資料庫實體的連接埠能對外開放連線

遠端如何連接呢?

伺服器欄位: 下面是資料庫實體名稱後面接的是「逗號」才輸入連接埠號。
192.168.128.219\HRM,50502
伺服器IP位址\實體名稱,連接埠號

填上有權限的帳號及密碼就能正常登入了。

MSSQL 使用 OPENROWSET 插入或更新檔案到資料型態是「varbinary(max)」的欄位

由於Easyflow的ISO文管人員在沒有注意文件內容是否正確的情況下就將新版文件發佈,隔天才發現發佈檔案有問題。但依照Easyflow ISO文管運作流程,當文件發佈後如果需要進行修正就要做一次文件版本更新。這樣的作法費時又費工,如果可以直接置換存放於資料庫中的檔案內容或許是一個比較簡的作法。

在MSSQL的資料庫中,可以利用內建函式「OPENROWSET」來將檔案塞入到欄位中。使用「OPENROWSET」可以當作是一個子查詢,而這個子查詢的來源資料表就是實體檔案的存放路徑(以SQLSERVER本機的路徑為基準、或是可以存取的網芳資料夾中的檔案路徑)。

注意!必須要給子查詢指定一個別名,否則在執行操作中會出現錯誤。

以下的範例是置換文件編號為「TQP-G001」發佈版本為「C」所對應到的發佈檔案,置換為網芳分享資料夾中的檔案。

update isoebb set isoebb010 =
(select * FROM OPENROWSET(bulk N'\\192.168.128.189\temp\廢棄物管理程序.pdf', SINGLE_BLOB ) as binary_file )
where isoebb005='TQP-G001' and isoebb006='C'

MSSQL 2008 如何由伺服器定序查詢「CodePage」屬性

可以用 collationproperty 函式,查詢定序名稱的CodePage屬性值。

查詢語法 COLLATIONPROPERTY(定序名稱,查詢的屬性名稱)

select COLLATIONPROPERTY('Chinese_Taiwan_Stroke_Bin','CodePage') as CodePage

由此得知 Chinese_Taiwan_Stroke_BIN’s codepage = 950

參考來源:COLLATIONPROPERTY (Transact-SQL)