ACCESS如何判断一个表是否存在
ACCESS如何判断一个表是否存在
环境:Windows XP + ACCESS 2003 + VC6.0(非MFC)
实现的功能:
1. 创建一个名为test.mdb的数据库
2. 在该数据库中创建一个名为case的表
3. 判断该表是否存在,存在则向里面写数据,否则返回。
前面俩步没有什么问题,但在第三步的时候,我试了以下方法,均失败
方法一:用_access("case", 00)试了一下,好像不行,不管表是否存在,都返回的是-1.
方法二:用SQL语句,判断recordset的count数目
strRecord=SELECT * FROM case;
int t = 0;
_RecordsetPtr tmpRecordset = NULL;
tmpRecordset = m_pConnection->Execute(_bstr_t(strRecord), &vRecords, adCmdUnknown);
t = tmpRecordset->RecordCount;
这种方法每次t的值都是-1
我想问一下,有没有其它的方法可以弄呢
1. 创建一个名为test.mdb的数据库
ADOX创建
2. 在该数据库中创建一个名为case的表
ADO、ADOX创建
3. 判断该表是否存在,存在则向里面写数据,否则返回。
捕获错误的方法、ADO ADOX DAO判断
如果你是要判断表是否存在,只要查系统表就可以了。
如果是因为无法得到记录数(为-1),可能是因为属性CursorLocation没有为adUseServer。select name from msysobjects where name='case' and type=1