成年大片免费视频播放二级_早上躁晚上躁天天躁8090_新金瓶梅2下载_欧美国产一卡二在线播放_国产在线精品欧美日韩电影

您的位置:首頁技術(shù)文章
文章詳情頁

數(shù)據(jù)庫相關(guān)的幾個技能:ACCESS轉(zhuǎn)SQL

【字號: 日期:2023-11-30 09:31:43瀏覽:726作者:豬豬

ACCESS轉(zhuǎn)SQL SERVER的數(shù)據(jù)庫的幾點經(jīng)驗:

本文主要介紹ACCESS轉(zhuǎn)SQL SERVER的數(shù)據(jù)庫的幾點經(jīng)驗、把ACCESS轉(zhuǎn)成SQL數(shù)據(jù)庫連接的具體方法和把ACCESS轉(zhuǎn)成SQL數(shù)據(jù)庫。

1.ACCESS的數(shù)據(jù)庫中的自動編號類型在轉(zhuǎn)化時,sql server并沒有將它設為自動編號型,我們需在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ù)庫處理中,卻不能用。

如何實現(xiàn)ACCESS轉(zhuǎn)SQL數(shù)據(jù)庫連接?

其實兩者基本通用 步驟很簡單3步:

1、轉(zhuǎn)化MDB數(shù)據(jù)庫到SQL SQL工具里就有

2、更改數(shù)據(jù)庫鏈接字串 以下為代碼:

以下為引用的內(nèi)容:Set Conn=Server.CreateObject("ADODB.Connection")SQL="Driver={SQL Server};Server=XD-Y1W9B7;UID=sa;PWD=sa;DataBase=ljl"Conn.Open(SQL)

最后是SQL與ACCESS差異的地方· 這個大家需要注意 下面為其詳細講解:

把ACCESS轉(zhuǎn)成SQL數(shù)據(jù)庫

很多朋友想用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ū)?ldquo;,看“立即運行“被選中按“下一步“,

11,按“完成“繼續(xù);

12,這個步驟你將看到你的數(shù)據(jù)被導入SQL2000里面,當出現(xiàn)“已經(jīng)成功把XXX個表導入到數(shù)據(jù)庫“的字樣,而且所有的表前面都有綠色的勾,就表示成功導入所有數(shù)據(jù),如果中途出現(xiàn)問題或者表前面有紅色的叉的話,說明該表沒有成功導入,這時就要回去查看自己的操作是否正確了.

三,數(shù)據(jù)修改

1,由于SQL2000里面沒有“自動編號“,所以你的以“自動編號“設置的字段都會變成非空的字段,這就必須手工修改這些字段,并把他的“標示“選擇“是“,種子為“1“,增量為“1“,

2,另外,ACCESS2000轉(zhuǎn)換成SQL2000后,原來屬性為“是/否“的字段將被轉(zhuǎn)換成非空的“bit“,這時候你必須修改成自己想要的屬性了;

3,另外,大家要注意對時間函數(shù)的把握.ACCESS與SQL是有很多不同的. ACCESS改為SQL需要注意哪幾個地方數(shù)據(jù)庫導入以后,自動增加字段需要重寫,所有的數(shù)字類型需要增加長度,最好用decimal。所有的默認值都丟失了。主要是數(shù)字類型和日期類型。所有now(),time(),date()要改成getdate()。 所有datediff(‘d‘, time1, time2)要改成datediff(day, time1, time2) 有可能一些true/false類型不能使用,要變?yōu)?/0。

備注類型要通過cast(column as varchar)來使用。 CursorType要改成1,也就是打開數(shù)據(jù)庫時要給出第一個數(shù)字參數(shù)為1,否則記錄可能顯示不完整。 isnull(rowname)要改成rowname = null ACCESS的數(shù)據(jù)庫中的自動編號類型在轉(zhuǎn)化時,sql server并沒有將它設為自動編號型,我們需在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=10“,而對SQL SERVER數(shù)據(jù)庫進行刪除是用:“delete user where id=10“. 日期函數(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ù)庫處理中,卻不能用。

相關(guān)文章: