自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Access轉(zhuǎn)SQL Server數(shù)據(jù)庫(kù)的經(jīng)驗(yàn)漫談

數(shù)據(jù)庫(kù) SQL Server
下面的文章主要介紹的是Access轉(zhuǎn)SQL Server數(shù)據(jù)庫(kù)的幾個(gè)經(jīng)驗(yàn),以下就是Access轉(zhuǎn)SQL Server數(shù)據(jù)庫(kù)的經(jīng)驗(yàn)具體方案的描述,希望在你今后的學(xué)習(xí)中會(huì)有所幫助。

以下的文章主要描述的是Access轉(zhuǎn)SQL Server數(shù)據(jù)庫(kù)的幾個(gè)經(jīng)驗(yàn)漫談,Access數(shù)據(jù)庫(kù)作為一個(gè)中小型的單機(jī)數(shù)據(jù)庫(kù)系統(tǒng),在承擔(dān)訪問量、數(shù)據(jù)量大的網(wǎng)站應(yīng)用時(shí),往往就不堪重負(fù)了。一般認(rèn)為。

超過50M的access數(shù)據(jù)庫(kù)性能就開始明顯下降,超過100M以后,出錯(cuò)、運(yùn)行慢的問題會(huì)更加突出。而我的BLOG數(shù)據(jù)庫(kù)已達(dá)到了四百多兆,痛定思痛,決定升級(jí)為SQL Server 2005。

這其中,走了好些彎路,起初我是直接利用企業(yè)管理器把Access導(dǎo)入SQL中,發(fā)現(xiàn)SQLl數(shù)據(jù)庫(kù)表是沒有自動(dòng)字段的,原來Access中的自動(dòng)字段被轉(zhuǎn)換成了普通字段,需要手工改成標(biāo)識(shí)類型,增量為1。 所有的時(shí)間字段,如果定義了默認(rèn)值,那么原來是now(),現(xiàn)在需要改成getdate() 。原來字段的默認(rèn)值都不會(huì)自動(dòng)引入,需要對(duì)照原表的字段手工添加。注釋在Access項(xiàng)目或SQLServer數(shù)據(jù)庫(kù)中,前綴“n”代表“國(guó)家/地區(qū)”,意思是這個(gè)數(shù)據(jù)類型是啟用Unicode的。在Access數(shù)據(jù)庫(kù)中,全部文本列在默認(rèn)情況下都是啟用Unicode的。真費(fèi)了我,好些光景。

如此這般數(shù)據(jù)庫(kù)可以調(diào)用,程序?qū)⒕椭苓\(yùn)行了,但發(fā)現(xiàn),原來的程序運(yùn)行起來錯(cuò)誤百出。

原來,Access與SQL程序中使用到的SQL查詢語句大體差不多,但是有一些微妙的差別,正是這些差別,造成了程序的不通用,一般要修改的部分如下:

(1)時(shí)間函數(shù)的問題:SQL數(shù)據(jù)庫(kù)的時(shí)間函數(shù)與access不同,最常見的是取現(xiàn)在時(shí)間的函數(shù),access是now(),SQL是getdate()。因此凡是在where子句中使用了now()的地方都要改成getdate();注意,now()函數(shù)在asp程序本身也要使用,凡是不在SQL Server數(shù)據(jù)庫(kù)查詢或執(zhí)行語句中使用的now()函數(shù)千萬不要改。

(2)時(shí)間比較函數(shù):datediff('d','時(shí)間1',‘時(shí)間2’)這是access查詢用的格式,SQl中這些引號(hào)都要去掉,同時(shí)時(shí)間格式的前后可能加上了#,這也要去掉。同樣這也是指在sql語句中的,在asp語句中的要保持原樣。

(3)空值的表示:在access中,判斷空值一般用是否=""來表示,但是這在SQL中往往出錯(cuò),如果遇到出錯(cuò)的問題或者程序運(yùn)行不正常,可以改成如這樣判斷:where (name is null)

(4)真假值判斷:access中可以用=true、=false來判斷,但是在SQL中就會(huì)出錯(cuò),因此在SQL查詢或執(zhí)行語句中這類判斷要分別改成=1、=0。注意一點(diǎn):有些程序雖然寫成=“true”,但是由于有引號(hào),所以這個(gè)字段是字符類型的,你不能改成=1,保持原樣即可。

(5)在對(duì)ACCESS數(shù)據(jù)庫(kù)進(jìn)行刪除紀(jì)錄時(shí)用:"delete * from user where id=10",而對(duì)SQL Server數(shù)據(jù)庫(kù)進(jìn)行刪除是用:"delete user where id=10"。

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

調(diào)試程序經(jīng)常遇到的出錯(cuò)的語句是:conn.execute(sql),注意這句本身是沒有錯(cuò)的,錯(cuò)誤原因是里面的這個(gè)sql字符串,要向上看這個(gè)sql字符串是如何生成的,按照上面所說的程序修改辦法修改。

***向大家推薦一款工具,可以直接生成生成升遷 SQL腳本,保存為 *.sql文件后,SQL2000的查詢分析器里調(diào)入執(zhí)行,可以生成升遷 ASP腳本,這樣你可以用該腳本和相應(yīng)MDB數(shù)據(jù)庫(kù)上傳到服務(wù)器在線升遷,可以直接執(zhí)行Access數(shù)據(jù)導(dǎo)入到SQL服務(wù)器(表結(jié)構(gòu)和數(shù)據(jù))。

程序編制: V37 paintblue.net (2004-11-20)

版權(quán)所有: paintblue.net | blueidea.com

無論商業(yè)還是免費(fèi),你可以自由使用

 

  1. CooSel2.0 CreateSQL V1.05 

1.ACCESS的數(shù)據(jù)庫(kù)中的自動(dòng)編號(hào)類型在轉(zhuǎn)化時(shí),SQL Server并沒有將它設(shè)為自動(dòng)編號(hào)型,我們需在SQL創(chuàng)建語句中加上identity,表示自動(dòng)編號(hào)!

2.轉(zhuǎn)化時(shí),跟日期有關(guān)的字段,SQL Server默認(rèn)為smalldatetime型,我們***將它變?yōu)閐atetime型,因?yàn)閐atetime型的范圍比smalldatetime型大。我遇見這種情況,用smalldatetime型時(shí),轉(zhuǎn)化失敗,而用datetime型時(shí),轉(zhuǎn)化成功。

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

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

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

【編輯推薦】

  1. SQL Server 2000 數(shù)據(jù)倉(cāng)庫(kù)中使用分區(qū)之分區(qū)的優(yōu)點(diǎn)
  2. SQL Server 2000 安裝時(shí)的一些癥狀歸納
  3. 啟動(dòng)自動(dòng)執(zhí)行SQL Server存儲(chǔ)過程的實(shí)際操作流程
  4. 對(duì)SQL Server引擎的介紹
  5. SQL Server數(shù)據(jù)庫(kù)與EXCEL數(shù)據(jù)導(dǎo)入與導(dǎo)出
責(zé)任編輯:佚名 來源: 服務(wù)器在線
相關(guān)推薦

2010-06-07 15:09:44

訪問MySQL數(shù)據(jù)庫(kù)

2010-11-08 16:04:06

SQL SERVER連

2009-08-03 14:17:18

C#連接AccessC#連接SQL Ser

2010-10-22 11:22:33

SQL Server數(shù)

2010-07-06 16:24:53

SQL Server數(shù)

2011-03-28 17:12:36

sql server數(shù)優(yōu)化

2011-08-25 17:15:04

2009-03-11 15:40:20

2010-07-21 14:11:36

SQL Server

2010-06-04 18:32:48

MySQL數(shù)據(jù)庫(kù)

2011-08-25 16:50:20

SQL ServerAccessASP

2010-07-15 17:28:50

SQL Server

2010-04-29 09:35:31

Oracle數(shù)據(jù)庫(kù)

2010-07-14 09:17:17

SQL Server數(shù)

2010-07-08 11:05:14

SQL Server數(shù)

2011-03-24 09:45:34

SQL Server數(shù)恢復(fù)

2011-03-24 09:07:11

SQL Server數(shù)備份

2011-03-24 09:24:08

SQL Server數(shù)還原

2011-03-23 17:10:41

ACCESSSQL數(shù)據(jù)庫(kù)

2021-05-17 06:57:34

SQLServer數(shù)據(jù)庫(kù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)