程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> ACCESS改為SQL需要注重哪幾個地方

ACCESS改為SQL需要注重哪幾個地方

編輯:關於Access數據庫
看到別人有時問這個方面的問題。。於是在各網站總結前前輩高人的幾點想法,拿來共享:

  數據庫導入以後,自動增加字段需要重寫,所有的數字類型需要增加長度,最好用decimal。

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

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

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

  有可能一些true/false類型不能使用,要變為1/0。

  備注類型要通過cast(columnasvarchar)來使用。

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

  isnull(rowname)要改成rowname=null

  Access數據庫中的自動編號類型在轉化時,sqlserver並沒有將它設為自動編號型,我們需在SQL創建語句中加上identity,表示自動編號!

  轉化時,跟日期有關的字段,SQLSERVER默認為smalldatetime型,我們最好將它變為datetime型,因為datetime型的范圍比smalldatetime型大。有時用smalldatetime型時,轉化失敗,而用datetime型時,轉化成功。

  對此兩種數據庫進行操作的sql語句不全相同,例如:在對Access數據庫進行刪除紀錄時用:"delete*fromuserwhereid=10",而對SQLSERVER數據庫進行刪除是用:"deleteuserwhereid=10".

  日期函數不相同,在對Access數據庫處理中,可用date()、time()等函數,但對SQLSERVER數據庫處理中,只能用datediff,dateadd等函數,而不能用date()、time()等函數。

  在對Access數據庫處理中,sql語句中直接可以用一些VB的函數,像cstr()函數,而對SQLSERVER數據庫處理中,卻不能用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved