亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來到思海網(wǎng)絡,我們將竭誠為您提供優(yōu)質(zhì)的服務! 誠征網(wǎng)絡推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購買流程 | 付款方式 | 聯(lián)系我們 [ 會員登錄/注冊 ]
促銷推廣
客服中心
業(yè)務咨詢
有事點擊這里…  531199185
有事點擊這里…  61352289
點擊這里給我發(fā)消息  81721488
有事點擊這里…  376585780
有事點擊這里…  872642803
有事點擊這里…  459248018
有事點擊這里…  61352288
有事點擊這里…  380791050
技術(shù)支持
有事點擊這里…  714236853
有事點擊這里…  719304487
有事點擊這里…  1208894568
有事點擊這里…  61352289
在線客服
有事點擊這里…  531199185
有事點擊這里…  61352288
有事點擊這里…  983054746
有事點擊這里…  893984210
當前位置:首頁 >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

ACCESS轉(zhuǎn)SQL需要注意的問題

添加時間:2013-3-2 17:37:53  添加: 思海網(wǎng)絡 

很多朋友想用SQL2000數(shù)據(jù)庫的編程方法,但是卻又苦于自己是學ACCESS的,對SQL只是一點點的了解而已,這里我給大家提供以下參考---將ACCESS轉(zhuǎn)化成SQL2000的方法和注意事項
一,首先,我說的是在ACCESS2000,SQL2000之間轉(zhuǎn)換,其他的我也還沒有嘗試過,希望大家多多試驗,肯定是有辦法的;
二,轉(zhuǎn)換的方法
1,打開”控制面板“下”管理工具“中的”數(shù)據(jù)庫源“;
2,按”添加“添加一個新的數(shù)據(jù)源,在選擇欄里選”Driver do microsoft Access
(*.mdb)”,完成后將出現(xiàn)一個框,

在”數(shù)據(jù)庫源“里面輸入你想寫的名稱,我取名叫“ABC”,說明不需要填,接著,按下面的選擇,尋找你的數(shù)據(jù)庫地址和選中(注意,請先備份自己的ACCESS數(shù)據(jù)庫),然后確定。
數(shù)據(jù)源在這里建好了,剩下轉(zhuǎn)換了。

3,打開SQL2000企業(yè)管理器,進入數(shù)據(jù)庫,新建一個空的數(shù)據(jù)庫“ABC”;
4,選擇新建立的數(shù)據(jù)庫,按鼠標右鍵,選擇“所有任務”下“導入數(shù)據(jù)”,按“下一步”繼續(xù);
5,在數(shù)據(jù)庫源下拉但中選擇”Driver do microsoft Access(*.mdb)“,在”用戶/系統(tǒng)DSN“中,選種你剛才添加的”ABC“,按 ”下一步“;
6,“目的”不需要修改,選擇服務器(一般下為自己的本機"local",也可以選擇服務器地址或者局域網(wǎng)地址,確定你的權(quán)限是否可以操作,),"使用WINDOWS 身份驗證"指用自己的系統(tǒng)管理員身份操作,"使用SQL身份操作驗證"可以用于網(wǎng)站的操作,推薦用后者;
7,選上"使用SQL身份操作驗證"后,填寫你的用戶名和密碼,我自己選擇的是系統(tǒng)默認號碼"sa","****",數(shù)據(jù)庫選擇剛新建的"ABC",按"下一步";
8,這一步的兩個單項選擇,"從數(shù)據(jù)源復制表和視圖"與"用一條查詢指令指定要傳輸?shù)臄?shù)據(jù)",選擇前者,按"下一步"繼續(xù);
9,這里將出現(xiàn)你自己ACCESS數(shù)據(jù)庫的表,按"全選"后,下一步;
10,"DTS導入/導出向?qū)?,看"立即運行"被選中按"下一步",
11,按"完成"繼續(xù);
12,這個步驟你將看到你的數(shù)據(jù)被導入SQL2000里面,當出現(xiàn)"已經(jīng)成功把XXX個表導入到數(shù)據(jù)庫"的字樣,而且所有的表前面都有綠色的勾,就表示成功導入所有數(shù)據(jù),如果中途出現(xiàn)問題或者表前面有紅色的叉的話,說明該表沒有成功導入,這時就要回去查看自己的操作是否正確了.

三,數(shù)據(jù)修改
1,由于SQL2000里面沒有"自動編號",所以你的以"自動編號"設(shè)置的字段都會變成非空的字段,這就必須手工修改這些字段,并把他的"標示"選擇"是",種子為"1",增量為"1",
2,另外,ACCESS2000轉(zhuǎn)換成SQL2000后,原來屬性為"是/否"的字段將被轉(zhuǎn)換成非空的"bit",這時候你必須修改成自己想要的屬性了;
3,另外,大家要注意對時間函數(shù)的把握.ACCESS與SQL是有很多不同的.


四、相關(guān)的字段問題
1.ACCESS的數(shù)據(jù)庫中的自動編號類型在轉(zhuǎn)化時,sql server并沒有將它設(shè)為自動編號型,我們需在SQL創(chuàng)建語句中加上identity,表示自動編號!
2.轉(zhuǎn)化時,跟日期有關(guān)的字段,SQL SERVER默認為smalldatetime型,我們最好將它變?yōu)閐atetime型,因為datetime型的范圍比smalldatetime型大。我遇見這種情況,用smalldatetime型時,轉(zhuǎn)化失敗,而用datetime型時,轉(zhuǎn)化成功。
3.對此兩種數(shù)據(jù)庫進行操作的sql語句不全相同,例如:在對ACCESS數(shù)據(jù)庫進行刪除紀錄時用:"delete * from user where id=10",而對SQL SERVER數(shù)據(jù)庫進行刪除是用:"delete user where id=10".
4.日期函數(shù)不相同,在對ACCESS數(shù)據(jù)庫處理中,可用date()、time()等函數(shù),但對SQL SERVER數(shù)據(jù)庫處理中,只能用datediff,dateadd等函數(shù),而不能用date()、time()等函數(shù)。
5.在對ACCESS數(shù)據(jù)庫處理中,sql語句中直接可以用一些VB的函數(shù),像cstr()函數(shù),而對SQL SERVER數(shù)據(jù)庫處理中,卻不能用。

五、相關(guān)語句問題
自動增加字段需要重寫。在access中經(jīng)常使用的自動編號字段,導入到mssql后,他并不是自增型的int,需要手工設(shè)置,把導入后的自動編號字段的標識的“否”改為“是”,“種子”和“遞增量”都為“1”,才能成為自動編號


所有的默認值都丟失了。主要是數(shù)字類型和日期類型


所有now(),time(),date()要改成getdate()


所有datediff('d', time1, time2)要改成datediff(day, time1, time2)


所有datediff('ww', time1, time2)要改成datediff(week, time1, time2)


所有datediff('d', time1, time2)要改成datediff(day, time1, time2)


在mssql server中,有許多保留字,在access中是沒有的,當你把數(shù)據(jù)導入到mssql的時候,問題就出來了。mssql在導入的時候,會自動給這些字段(包括數(shù)據(jù)庫中的表名)加上“[字段名]”,因此,你必須修改你的腳本,把相應的字段名字(或者表名字)加上中括號,或改變字段名字為不是mssql的保留字


在用access關(guān)于時間的使用,大家喜歡使用“select * from aaaa while time="&now()”這樣的sql語句,然而,在mssql中沒有“now()”這個函數(shù),而是使用“getdate()”,所以,所有的sql語句中的“now()”必須換成“getdate()”。


日期函數(shù)不相同,在對ACCESS數(shù)據(jù)庫處理中,可用date()、time()等函數(shù),但對
    SQL SERVER數(shù)據(jù)庫處理中,只能用datediff,dateadd等函數(shù),而不能用date()、time()等函數(shù)。


轉(zhuǎn)化時,跟日期有關(guān)的字段,SQL SERVER默認為smalldatetime型,我們最好將它變?yōu)閐atetime型,因為datetime型的范圍比smalldatetime型大。有時用smalldatetime型時,轉(zhuǎn)化失敗,而用datetime型時,轉(zhuǎn)化成功


isnull(rowname)要改成rowname = null


CursorType要改成1,也就是打開數(shù)據(jù)庫時要給出第一個數(shù)字參數(shù)為1,否則記錄可能
顯示不完整


備注類型要通過cast(column as varchar)來使用


true/false類型不能使用,要變?yōu)?/0


對此兩種數(shù)據(jù)庫進行操作的sql語句不全相同,例如:在對ACCESS數(shù)據(jù)庫進行刪除紀錄時用:"delete * from user where id=10",而對SQL SERVER數(shù)據(jù)庫進行刪除是用:"delete user where id=10".


在對ACCESS數(shù)據(jù)庫處理中,sql語句中直接可以用一些VB的函數(shù),像cstr()函數(shù),而對SQL SERVER數(shù)據(jù)庫處理中,卻不能用


在access的sql語句中的時間使用變量查詢的時候,大家一般使用"select * from aaaa while time=#"&變量名&"#",在mssql中是不行的,他的語法是“select * from aaaa while time='"&變量名&"'"”。(意思是讓你把日期時間變量當成字符串來使用,呵呵~~~)


原來ASP里的“DELETE * FROM ……”要改為“DELETE FROM ……”


有可能rs.update失敗,修改成update 表名 set 字段=‘值’ 這樣通過(遇到的情況,提示為:
Microsoft OLE DB Provider for SQL Server 錯誤 '80040e38'

樂觀并發(fā)檢查失敗。已在此游標之外修改了該行。

/Admin_ClassOrder.asp,行 164 )


access里面除法可以使用"\"或者"/",MSSQL里面只能使用"/"
關(guān)鍵字:ACCESS、SQL2000、數(shù)據(jù)庫、服務器、局域網(wǎng)

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國增值電信業(yè)務經(jīng)營許可證: 粵B1.B2-20030321 備案號:粵B2-20030321-1
網(wǎng)站公安備案編號:44060602000007 交互式欄目專項備案編號:200303DD003  
察察 工商 網(wǎng)安 舉報有獎  警警  手機打開網(wǎng)站