對於網上的一些access轉sqlserver的解決方法,比較多,其實只要多注意,多實踐,發現問題,解決問題。
今天幫同學改一個老的系統作爲畢業設計,這系統技術絕對落後asp+access。爲了應付老師的驗收,然後這同學編程又不是很好,而其到了最後時刻纔想到開始做畢設,於是找到了我。
我看了他不知從哪裏搞來的代碼,跑了下,還行能跑,過兩天就要驗收程序了,把asp改成 asp.net是沒時間了,於是我提議改下數據庫算了,於是決定把access轉成sql server。看似一個公司的產品,轉起來問題到一大堆。現總結如下,
先說怎麼轉移數據,打開sqlserver的企業管理器,建立張表,然後右擊那張表,點導入數據,然後選中數據源(我這裏就是access的mdb文件),一路next,基本沒什麼問題,數據就這樣導好了,但問題沒那麼簡單,sql server和access的機制有很大的不同
1,由於SQL2000裏面沒有自動編號,所以你的以自動編號設置的字段都會變成非空的字段,這就必須手工修改這些字段,並把他的標示選擇是,種子爲1,增量爲1,
2,另外,ACCESS2000轉換成SQL2000後,原來屬性爲是/否的字段將被轉換成非空的bit,這時候你必須修改成自己想要的屬性了;
3,另外,大家要注意對時間函數的把握.ACCESS與SQL是有很多不同的.
ACCESS轉MS SQL數據庫的幾點經驗
1.ACCESS的數據庫中的自動編號類型在轉化時,sql server並沒有將它設爲自動編號型,我們需在SQL創建語句中加上identity,表示自動編號!
2.轉化時,跟日期有關的字段,SQL SERVER默認爲smalldatetime型,我們最好將它變爲datetime型,因爲datetime型的範圍比smalldatetime型大。我遇見這種情況,用smalldatetime型時,轉化失敗,而用datetime型時,轉化成功。
3.對此兩種數據庫進行操作的sql語句不全相同,例如:在對ACCESS數據庫進行刪除紀錄時用:delete * from user where id=10,而對SQL SERVER數據庫進行刪除是用:delete user where id=10.
4.日期函數不相同,在對ACCESS數據庫處理中,可用date()、time()等函數,但對SQL SERVER數據庫處理中,只能用datediff,dateadd等函數,而不能用date()、time()等函數。
5.在對ACCESS數據庫處理中,sql語句中直接可以用一些VB的函數,像cstr()函數,而對SQL SERVER數據庫處理中,卻不能用。
Access轉Sql Server問題 實例說明
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章
Switch Access/Trunk/Hybrid Port對tag的處理【轉】
fengyinbo923
2019-02-23 13:16:22
PostgreSQL和Mysql時間戳轉化爲普通時間
tianshanju
2019-02-23 00:05:45
(轉載)ESX Server在VC中斷連接的解決方法
realzfd
2019-02-24 13:09:42
Windows Server 2008 故障轉移羣集簡介
圍剿V風捲
2019-02-23 13:15:32
Test Writer For Windows Server 2003 R2
hz022
2019-02-23 13:00:58
Linux下部署Vmware Server(上)
T195李亮
2019-02-23 12:52:32
Linux下部署Vmware Server(下)
T195李亮
2019-02-23 12:52:32
Windows域環境下部署ISA Server 2006防火牆(二)
鄒盼盼
2019-02-23 00:13:33
Exchange Server 中數據文件的移植
iLync_Steven
2019-02-23 00:08:47
SQL Server 中解決保存維護計劃提示:no description found
imdbt
2019-02-23 00:00:50
ASP網站Server object error的解決辦法
inveis
2019-02-22 23:49:33
SQLServer2000掛起問題
bingquan
2019-02-22 23:42:27
SQL SERVER數據庫中的索引
ssbird
2019-02-22 23:37:25
Windows Server 2012 基礎設置
960945486
2019-02-22 23:35:57
SQL Server 高頻問題總結
qiaogx
2019-02-22 23:33:51