Office中国论坛/Access中国论坛

标题: 向高手请教...ACCESS操作 [打印本页]

作者: yang1132    时间: 2003-6-12 18:42
标题: 向高手请教...ACCESS操作
初次用VC操作ACCESS,遇到问题...
1.CDaoDatabase.Create()创建的ACCESS数据库为什么在ACCESS2000下需要进行转换?2.而且CDaoDatabase不能操作ACCESS2000数据库,有没有遇到这类问题?
3.能否用SQL语句操作ACCESS数据库?
谢谢
作者: marco2    时间: 2003-6-12 19:40
1、C我没用过,但想想应该是你用DAO时没有将版本设正确,也许用的是默认的写法,故你试试用 Microsoft.Jet.OLEDB.4.0 这个驱动程序吧!
2、这个问题不太明白你讲的。在ACCESS中的确支持SQL查询,但你要如何用SQL来操作ACCESS却不怎么一回事呢?
作者: 李寻欢    时间: 2003-6-12 21:13
CDaoDatabase.Create()创建的数据库是97格式的,就如在VB一样,如果没打补丁,默认的格式也是97。VC没用过,不过相信是同样的原因。
SQL语句是通用的数据库操作语句,当然也可以用来操作Access数据库。
作者: yang1132    时间: 2003-6-13 07:20
感谢李寻欢、marco2。
请问:到哪里搞这些补丁?
SQL语句是可以操作ACCESS,但是两者好象有点出入。如下:
create table my_table (id int primary key ,name char(20) null)
此句在SQL SERVER中就可以,但是在ACCESS中死活不行。
诸位试一下。
作者: 李寻欢    时间: 2003-6-13 07:52
VB的话是要装sp5,VC就不知道了,应该也有相应的补丁文件。
我在Access中直接运行这句成功创建了表:
docmd.RunSQL "create table my_table (id int primary key ,name char(20) null)"
说明是可以用的。
作者: yang1132    时间: 2003-6-13 17:15
李寻欢
你用的是DAO吗。
我在VC中用用的也是DAO啊。难道是版本不兼容的问题。
作者: 李寻欢    时间: 2003-6-13 17:20
我没有用DAO,我是直接在Access的调试窗口输入那句话的,只是为了验证Access是否能正确回应这个命令而已。
你也可以打开一个Access文件,新建一个窗体,然后按Ctrl+G调出“立即窗口”,在“立即窗口”里输入docmd.RunSQL "create table my_table (id int primary key ,name char(20) null)"
就可以看到表里多出了一个名为my_table的表。
作者: yang1132    时间: 2003-6-14 01:29
李寻欢
知道了。多谢




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3