ACCESSAccess中运用SQL语句应掌握的几碰技术(学习)

正文详细描述了Access中使SQL语句应掌握的几乎碰技术。

以下SQL语句以ACCESS XP的查询中测试通过

建表:

Create Table Tab1 (
ID Counter,
Name string,
Age integer,
[Date] DateTime);
 

技巧:

自增字段用 Counter 声明。

许段名也第一字之字段用方括号[]满起来,数字作为字段名吧使得。

确立目录:

脚的讲话以Tab1的Date列上起可重复索引:

Create Index iDate ON Tab1 ([Date]);
 

成就后ACCESS中字段Date索引属性显示为 – 有(有再度)。

脚的说话以Tab1的Name列上建不可再索引:

Create Unique Index iName ON Tab1 (Name);
 

做到后ACCESS中字段Name索引属性显示为 – 有(无复)。

脚的言语删除刚才建立之有数独目录:

Drop Index iDate ON Tab1;
Drop Index iName ON Tab1;
 

Access与SQL Server中之UPDATE语句对比

SQL Server中创新多表的UPDATE语句:

UPDATE Tab1
SET a.Name = b.Name
FROM Tab1 a,Tab2 b
WHERE a.ID = b.ID;
 

如出一辙效果的SQL语句以Access中当是:

UPDATE Tab1 a,Tab2 b
SET a.Name = b.Name
WHERE a.ID = b.ID;
 

纵然:ACCESS中的UPDATE语句没有FROM子句,所有援的表都列于UPDATE关键字后。

高达例被设Tab2方可免是一个阐明,而是一个询问,例:

UPDATE Tab1 a,(Select ID,Name From Tab2) b
SET a.Name = b.Name
WHERE a.ID = b.ID;
 

做客多个不同之ACCESS数据库-在SQL中利用In子句:

Select a.*,b.* From Tab1 a,Tab2 b
In ‘db2.mdb’ Where a.ID=b.ID;
 

点的SQL语句询问有时数据库中Tab1同db2.mdb(当前文件夹中)中Tab2为ID为涉的有所记录.

症结-外部数据库不能够带动密码。

于Access中做客其它ODBC数据源

下例在ACCESS中询问SQLSERVER中的数量:

SELECT * FROM Tab1 IN [ODBC]
[ODBC;Driver=SQL Server;UID=sa;
PWD=;Server=127.0.0.1;DataBase=Demo;]
 

表面数据源连接属性的完整参数是:

[ODBC;DRIVER=driver;SERVER=server;
DATABASE=database;UID=user;PWD=password;]
 

内的DRIVER=driver可以在注册表中之HKEY_LOCAL_MACHINE”SOFTWARE”ODBC”ODBCINST.INI”

中找到。

Access支持子查询

ACCESS支持外接连,但无包括完整外部联接,如支持LEFT JOIN 或 RIGHT
JOIN,但切莫支持FULL OUTER JOIN 或 FULL JOIN。

Access中的日期查询

在意:Access中的日期时相隔符是#只要休是引号Select * From Tab1 Where
[Date]>#2002-1-1#;

在DELPHI中本人这样用:

SQL.Add(Format(
‘Select * From Tab1 Where [Date]>#%s#;’,
[DateToStr(Date)]));
 

Access中之字符串可以用双引号分隔,但SQL
Server不认,所以为了迁移方便及相当, 建议用单引号作为字符串分隔符。

来源:http://www.wwbug.com/html/2007-6/200608296583.htm

相关文章