ACCESS結構簡單容易處理,而且也能滿足多數的網站程式要求,也是初學者的試牛刀。
ACCESS是小型資料庫,既然是小型就有他根本的局限性:
1)、資料庫過大,一般ACCESS資料庫達到50M左右的時候性能會急劇下降!
2)、網站通路頻繁,經常超過100人的線上時,處理速度會有影響!
3)、記錄數過多,一般記錄數達到10萬條左右的時候性能就會急劇下降!
1、select,update語句差別
select,update對于單表操作時基本一緻。
但多表操作時update語句的差別ACCESS與SQLSERVER中的UPDATE語句會有差别:
SQLSERVER中更新多表的UPDATE語句:
UPDATE Table1 SET a.Name = b.Name FROM Table1 a, Table2 b WHERE a.ID = b.ID;
ACCESS中同樣功能的SQL語句:
UPDATE Table1 a, Table2 b SET a.Name = b.Name WHERE a.ID = b.ID;
比較得出:ACCESS中的UPDATE語句沒有FROM子句,所有引用的表都列在UPDATE關鍵字後,這點同mysql;
2、delete語句
SQLSERVER中:DELETE from Table1 WHERE ID > 1;
Access中:DELETE * from Table1 WHERE ID > 1;
比較得出:SQLSERVER中,即隻要把select語句裡的select與delete的操作文法一緻的,不需要*;
3、as後面的計算字段差別
SQLSERVER中:SELECT a.sum(num) as sum_num, sum(num)*num as all_num; 即
Access中: SELECT a,sum(num) as sum_num, sum_num*num as all_num; 即
比較得出:
SQLSERVER中:不可以把AS後的字段當作一個資料庫字段參與計算。
Access中: 可以把AS後的字段當作一個資料庫字段參與計算。
4、「.」與「!」的差異
SQLSERVER中:SELECT Table1.a AS Table1a, Table2.b AS Table2b FROM Table1, Table2;
Access中: SELECT Table1!a AS Table1a, Table2!b AS Table2b FROM Table1, Table2;
「!」使用的場合很少,在ACCESS中也是可以使用「.」的,但不要吧省略AS;
5、日期分隔符号
SQLSERVER中:單引号(’)
Access中:井号(#)
6、Boolean所表示的常量
SQLSERVER中:整數:1(真)、0(假)
Access中:True、False;On、Off;Yes、No;整數:-1(真)、0(假)。
7、字元串連接配接
SQLSERVER中:加号(+)
Access中:和号(&)
8、通配符
SQLSERVER中:
百分号(%)與零個或更多字元比對。
下劃線(_)與單個字元比對。
上插入符(^)意味着不在清單中。
沒有與英鎊符(#)對應的字元。
Access中: 星号(*)與零個或更多字元比對。
問号(?)與單個字元比對。
歎号(!)意味着不在清單中。
英鎊符(#)意味着單個數字。
9、DROP INDEX
SQLSERVER中:Drop Index <表名>.<索引名>
Access中:Drop Index <索引名> ON <表名>
10、表添加辨別列
SQLSERVER中:alter table <表名> add <列名> bigint identity(1,1) not null