AutoCAD二次开发的14.5 章节 编程思路是 1 ObjectID、Handle和对象本身 2 记录和实体对应的惟一性 效果示例见:http://bbs.mjtd.com/forum.php?mod=viewthread&tid=57835 数据记录相关的数据库应掌握如下要点 1 Access应用程序对应的对象库和创建方法 Ms Access 2000 引用的对象库Microsoft Access 9.0 Object Library 创建应用程序对象的方法CreateObject("Access.Application.9") 2 创建ADO连接 cn.Provider = "Microsoft Jet OLEDB 4.0" 在VB+ACCESS+SQL条件,引用MicroSoft Jet OleDb 4.0数据库环境下, SQL语法格式应为 JET SQL语法格式。 SQL 与 JET SQL 有什么区别《查询》 SQL 是结构化查询语言的缩写,是一种标准。 现在一般将标准的 SQL 语言规范称为 ANSI SQL XX,后面的 XX 表示版本,比如 ANSI SQL 92 规范。 很多公司的数据库软件都使用 SQL 语句来进行数据库操作,但是各大公司都对标准的 SQL 语言规范进行了扩展,因此 SQL 很多分支,各种分支都有其特殊且与其他分支不兼容的地方。 JET SQL 与 T-SQL 都是微软所特有的 SQL 分支,JET SQL 用于 ACCESS 数据库软件,T-SQL 用于 SQL SERVER 数据库软件。 本文为什么要对SQL作细化总结?理由有2点 1 在编程中,在编程实现中,使用SQL语言多层套嵌时,出现了括号问题,找了很多资料原因才找到。如: 多层套嵌时 JET SQL 必须将 SELECT 子句用括号 ( ) 一层一层包含起来,而 T-SQL 没有此规定 Jet SQL 示例: select [table1].[field1],[table2].[field4],[table3].[field3],[table4].[field4] from ((([table1] left join [table2] on [table1].[field1]=[table2].[field1]) left join [table3] on [table1].[field1]=[table3].[field1]) left join [table4] on [table1].[field1]=[table4].[field1]) T-SQL 示例: select [table1].[field1], [table2].[field4], [table3].[field3], [table4].[field4] from [table1] left join [table2] on [table1].[field1]=[table2].[field1] left join [table3] on [table1].[field1]=[table3].[field1] left join [table4] on [table1].[field1]=[table4].[field1] 2 SQL语法如果用好了,要比其它方法效率高。如 在一个access数据库中,有三个Table表。每个表都有一个实体句柄Handle或Object(建立线、圆等实体属性不同,不须建多个库),须要采用SQL技术将三个表中的ENT字段合到一个表中。这种工作方法的效率要比采用循环打开三个表赋值高,而且简单,实用. select (a.ent & b.ent & c.ent) as Ent from ((a _ inner b on a.ID = b.ID) _ inner c on a.ID = c.ID) 要是采用rst1,rst2,rst3 do until rest1.eof() loop do until rest2.eof() loop do until rest2.eof() loop 光写程序就要几十条 因此,本文总结JET SQL知识,目的是在数据记录和实体对应的惟一性的编程时,提高工作效率。 |