ADO创建数据库表的问题

fhuo 2004-12-25 10:34:05
我使用了SQL Server 2000中的tempdb作为内存数据库,但是在程序运行的时候需要判断该数据库中的表是存在,如果不存在,就要创建,如果存在就不需要重建建立了。
使用ADO进行数据库连接我已经做了,但是不知道怎么判断数据库中的一个表是否已经存在?
...全文
87 点赞 收藏 5
写回复
5 条回复
fhuo 2004年12月26日
这段程序确实不错,我试了
回复 点赞
fhuo 2004年12月26日
呵呵,看明白了,这样是不错的,需要一个个的判断,如果没有表而需要添加表的sql语句怎么写呀?
回复 点赞
fhuo 2004年12月26日
我想你这个是不是在txt文件中存放表的名字呀?那么如果判断一些表没有,你又怎么记住呢?还有如果一个表没有,怎么添加呢?
大哥能否把你这些程序的源代码发给我,我给你更多的分,好不好?
回复 点赞
Kudeet 2004年12月25日
两个参数就是连接字符串和要判断的表名
回复 点赞
Kudeet 2004年12月25日
bool CMainFrame::IsHaveTable(_ConnectionPtr pConnection, CString strTableName)
{
_RecordsetPtr pRstSchema = NULL;//数据库表指针
bool bIsHaveNo = FALSE;//是否有表?默认无表
//pConnection:指向数据库
pRstSchema = pConnection->OpenSchema(adSchemaTables);//指向所有的表

while(!(pRstSchema->EndOfFile))//指针是否已经指向最后一条记录?
{
_bstr_t table_name = pRstSchema->Fields->GetItem("TABLE_NAME")->Value;//得到表的名称

if(strTableName == (LPCSTR) table_name)//表名判断是否相同?
{
bIsHaveNo = TRUE;//有表了
break;
}
pRstSchema->MoveNext();
}
return bIsHaveNo;
}
回复 点赞
发动态
发帖子
数据库
创建于2007-09-28

3443

社区成员

3.9w+

社区内容

VC/MFC 数据库
社区公告
暂无公告