查询表是否在数据库中存在。。。

xiaofeng007 2003-10-21 12:24:38
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Send20031004]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
print 'aa'
else
print 'bb'
1、其中Send20031004表是Send+日期,随时可以改变。
2、如果我连接的是master数据库,而要查询定义的数据库中表是否存在,请问sql怎么写。
...全文
107 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
aierong 2003-10-21
  • 打赏
  • 举报
回复
如果我连接的是master数据库,而要查询定义的数据库中表是否存在,请问sql怎么写。

declare @sql nvarchar(4000),@par nvarchar(4000),@p varchar(8000)
select @sql='if exists(select name from master..sysobjects where name=@name and type=''U'') print ''exist'' else print ''not exist'''
select @par='@name varchar(4000)'
select @p='send'+'20031022'
execute sp_executesql @sql,@par,@p
aierong 2003-10-21
  • 打赏
  • 举报
回复
create table Send20031021(i int)
create table Send20031022(i int)

declare @sql nvarchar(4000),@par nvarchar(4000),@p varchar(8000)
select @sql='if exists(select name from sysobjects where name=@name and type=''U'') print ''exist'' else print ''not exist'''
select @par='@name varchar(4000)'
select @p='send'+'20031022'
execute sp_executesql @sql,@par,@p
--
exist
playyuer 2003-10-21
  • 打赏
  • 举报
回复
select * from dbo.sysobjects where id = object_id(N'[DBName].[dbo].[TablenName]') and OBJECTPROPERTY(id, N'IsUserTable') = 1
aierong 2003-10-21
  • 打赏
  • 举报
回复
动态语句
exec



动态SQL语句
http://expert.csdn.net/Expert/topic/2364/2364046.xml?temp=.1586878

gmlxf 2003-10-21
  • 打赏
  • 举报
回复
if exists(select name from 数据库..sysobjects where name='Send20031004' and type='U')
print 'exist'
else
print 'not exist'
sdhdy 2003-10-21
  • 打赏
  • 举报
回复
if exists (select * from 你要查的数据库名.dbo.sysobjects where id = object_id(N'[dbo].[Send20031004]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
print 'aa'
else
print 'bb'
xiaofeng007 2003-10-21
  • 打赏
  • 举报
回复
如果我要将print 改为给变量赋值sql怎么写。

22,206

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧