Access轉(zhuǎn)Sql Server問題 實例說明
來源:程序員人生 發(fā)布時間:2014-03-19 23:12:44 閱讀次數(shù):3418次
今天幫同學(xué)改一個老的系統(tǒng)作為畢業(yè)設(shè)計
這系統(tǒng)技術(shù)絕對落后asp+access
為了應(yīng)付老師的驗收
然后這同學(xué)編程又不是很好
而其到了最后時刻才想到開始做畢設(shè)
于是找到了我
我看了他不知從哪里搞來的代碼
跑了下
還行能跑
過兩天就要驗收程序了
把asp改成 是沒時間了
于是我提議改下數(shù)據(jù)庫算了
于是決定把access轉(zhuǎn)成sql server
看似一個公司的產(chǎn)品
轉(zhuǎn)起來問題到一大堆
現(xiàn)總結(jié)如下
先說怎么轉(zhuǎn)移數(shù)據(jù)
打開sqlserver的企業(yè)管理器
建立張表
然后右擊那張表
點導(dǎo)入數(shù)據(jù)
然后選中數(shù)據(jù)源(我這里就是access的mdb文件)
一路next
基本沒什么問題
數(shù)據(jù)就這樣導(dǎo)好了
但問題沒那么簡單
sql server和access的機制有很大的不同
由于SQL
里面沒有自動編號
所以你的以自動編號設(shè)置的字段都會變成非空的字段
這就必須手工修改這些字段
并把他的標示選擇是
種子為
增量為
另外
ACCESS
轉(zhuǎn)換成SQL
后
原來屬性為是/否的字段將被轉(zhuǎn)換成非空的bit
這時候你必須修改成自己想要的屬性了;
另外
大家要注意對時間函數(shù)的把握
ACCESS與SQL是有很多不同的
ACCESS轉(zhuǎn)MS SQL數(shù)據(jù)庫的幾點經(jīng)驗
ACCESS的數(shù)據(jù)庫中的自動編號類型在轉(zhuǎn)化時
sql server并沒有將它設(shè)為自動編號型
我們需在SQL創(chuàng)建語句中加上identity
表示自動編號!
轉(zhuǎn)化時
跟日期有關(guān)的字段
SQL SERVER默認為smalldatetime型
我們最好將它變?yōu)閐atetime型
因為datetime型的范圍比smalldatetime型大
我遇見這種情況
用smalldatetime型時
轉(zhuǎn)化失敗
而用datetime型時
轉(zhuǎn)化成功
對此兩種數(shù)據(jù)庫進行操作的sql語句不全相同
例如
在對ACCESS數(shù)據(jù)庫進行刪除紀錄時用
delete * from user where id=
而對SQL SERVER數(shù)據(jù)庫進行刪除是用
delete user where id=
日期函數(shù)不相同
在對ACCESS數(shù)據(jù)庫處理中
可用date()
time()等函數(shù)
但對SQL SERVER數(shù)據(jù)庫處理中
只能用datediff
dateadd等函數(shù)
而不能用date()
time()等函數(shù)
在對ACCESS數(shù)據(jù)庫處理中
sql語句中直接可以用一些VB的函數(shù)
像cstr()函數(shù)
而對SQL SERVER數(shù)據(jù)庫處理中
卻不能用
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學(xué)習(xí)有所幫助,可以手機掃描二維碼進行捐贈