vc下操作sql server2000数据库,怎么查询一个数据表是否存在
1个回答
展开全部
char sqlcommand[100];
//先连接SQL SERVER系统自带的master数据库
sprintf(sqlcommand, "Driver=SQL Server;Database=master;Server=%s;UID=%s;PWD=%s" ,pServer , pUser, pPasswd);
conn->Open((_bstr_t)sqlcommand,"","",adModeUnknown);
_variant_t RecordsAffected;
memset(sqlcommand,0,100);
sprintf(sqlcommand,"Create database %s",pDataBaseName);
conn->Execute((_bstr_t)sqlcommand,&RecordsAffected,adCmdText);
conn->Close();
------解决方案--------------------------------------------------------SQL code if exists(select 1 from sysobjects where xtype='u' and name='表名 ') select '存在' else select '不存在'
------解决方案--------------------------------------------------------大概就这样~~!try{cstring str=L"select * from tab1";
Execute……
exitConnect……
MessageBox(L"表存在")}catch(_com_error e){MessageBox(L"表不存在");}------解决方案--------------------------------------------------------在master数据为中的sysobjects表里查询存不存在即可。
------解决方案--------------------------------------------------------SQL code select * from dbo.sysobjects where id = object_id(N'[dbo].[tableName]') and OBJECTPROPERTY(id, N'IsUserTable') = 1
------解决方案--------------------------------------------------------SQL Server 每个数据库中,都有一个表【sysobjects】,你建立的每一张表都在它中占一行;
//先连接SQL SERVER系统自带的master数据库
sprintf(sqlcommand, "Driver=SQL Server;Database=master;Server=%s;UID=%s;PWD=%s" ,pServer , pUser, pPasswd);
conn->Open((_bstr_t)sqlcommand,"","",adModeUnknown);
_variant_t RecordsAffected;
memset(sqlcommand,0,100);
sprintf(sqlcommand,"Create database %s",pDataBaseName);
conn->Execute((_bstr_t)sqlcommand,&RecordsAffected,adCmdText);
conn->Close();
------解决方案--------------------------------------------------------SQL code if exists(select 1 from sysobjects where xtype='u' and name='表名 ') select '存在' else select '不存在'
------解决方案--------------------------------------------------------大概就这样~~!try{cstring str=L"select * from tab1";
Execute……
exitConnect……
MessageBox(L"表存在")}catch(_com_error e){MessageBox(L"表不存在");}------解决方案--------------------------------------------------------在master数据为中的sysobjects表里查询存不存在即可。
------解决方案--------------------------------------------------------SQL code select * from dbo.sysobjects where id = object_id(N'[dbo].[tableName]') and OBJECTPROPERTY(id, N'IsUserTable') = 1
------解决方案--------------------------------------------------------SQL Server 每个数据库中,都有一个表【sysobjects】,你建立的每一张表都在它中占一行;
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询