台灣最大程式設計社群網站
線上人數
1801
 
會員總數:246101
討論主題:189673
歡迎您免費加入會員
討論區列表 >> MS SQL >> 關於資料庫升級的討論
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
關於資料庫升級的討論
價值 : 10 QP  點閱數:1878 回應數:4
樓主

eric
初學者
5 2
30 5
發送站內信

我寫一隻專門更新sql server資料庫
資料表/欄位/sp等的程式

寫這的目的是.我有很多客戶在別的地方.
若資料庫每一次有變動.
我使用遠端遙控程式去遙控使用者的電腦
那將會是更大災難...不符合成本
才會有這個構想


利用osql執行 sql script 更新作業.
更新不成功.也紀錄(output.log).回報錯誤訊息...

osql -U sa -P 123456 -d TuDou -i xxx.sql -o output.log

可是發生一件就是
不是每一台電腦 更新都ok.有些資料會被刪除.有些觸發器變成沒法使用
是不是有更好的方式去建構更新資料庫的


目前我的更新程式...更新程式/報表是OK.只差資料庫而已






本篇文章發表於2009-04-05 22:59
1樓
回應

mike
檢舉此回應
可以使用SQL SMO(Server Management Objects)撰寫
推薦你可以參考Addision Wesley出版的A Developer's Guide to SQL Server 2005,台北天瓏書局有售。
本篇文章回覆於2009-04-13 10:52
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

eric
檢舉此回應
我是要sql server資料庫的欄位升級程式
可是那是提到2000-->2005
不過很感謝你提共資料
本篇文章回覆於2009-04-13 20:44
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

經驗無價
捐贈 VP 給 經驗無價 檢舉此回應
您參考一下, Script 是否照如下的次序進行著
到rebuild table時, 資料量不大, 可以drop 重建就重建; 除非資料量大, 那就先試alter, 不行再試 drop/create的動作.
-- drop trigger
-- drop index
-- drop sp/func
-- drop view
-- create/alter/drop table
1. select * into #tmp_source from source
2. drop table source
3. create table source(new schema)
4. insert into source from #tmp_source
-- create view
-- create sp/func
-- create index
-- create trigger
本篇文章回覆於2009-04-14 09:03
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

eric
檢舉此回應
經驗無價 謝謝你的建議...我會趕緊去測試
本篇文章回覆於2009-04-14 22:24
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.