程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQLServer和Access,Sql語句轉換時的區別

SQLServer和Access,Sql語句轉換時的區別

編輯:關於SqlServer

1.如果在Access中用Not IsNull("字段名"),選擇不為空的記錄,在SQLSERVER中則要改為IS Not Null("字段名");
注:在寫Sql語句的時候最好寫成IS Not Null("字段名"),在SQLSERVERAccess中都支持;
2.
轉換小寫:
Access中用Lcase("字段名");
SQLSERVER中用:LOWER("字段名")
3.刪除記錄語句如果在Access中用了“Delete * From 表名”
Sqlserver中則需改為“Delete From 表名";
在寫Sql語句的時候最好寫成"Delete From 表名",在SQLSERVERAccess中都支持;
4.所有datediff('d', time1, time2)要改成datediff(day, time1, time2)
5.一些true/false類型不能使用,要變為1/0
6.日期函數不相同,在對Access數據庫處理中,可用date()、time()等函數,但對SQL SERVER數據庫處理中,只能用datediff,dateadd等函數,而不能用date()、time()等函數。
7.在對Access數據庫處理中,sql語句中直接可以用一些VB的函數,像cstr()函數,而對SQL SERVER數據庫處理中,卻不能用。
8.Access導入SqlServer後數據庫要注意的問題

A:數據庫導入以後,自動增加字段需要重寫,所有的數字類型需要增加長度,最好用decimal。
B:所有的默認值都丟失了。主要是數字類型和日期類型。
C:所有now(),time(),date()要改成getdate()。
D:Access的數據庫中的自動編號類型在轉化時,sql server並沒有將它設為自動編號型,我們需在SQL創建語句中加上identity,表示自動編號!
E:轉化時,跟日期有關的字段,SQL SERVER默認為smalldatetime型,我們最好將它變為datetime型,因為datetime型的范圍比smalldatetime型大。有時用smalldatetime型時,轉化失敗,而用datetime型時,轉化成功。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved