还有: select * from sysobjects where name='banfei' and xtype='U' 的写法严格来说是错误的,比如你的数据库用sa建立一个banfei表,用user1也建立一个banfei表,这个语句返回两条记录,而 select * from dbo.sysobjects where id = object_id(N'[dbo].[banfei]') and OBJECTPROPERTY(id, N'IsUserTable') = 1 返回一条记录,也就是说后一语句可以区分数据对象的所有者。
print '表已经存在'
else
print '表不存在'
select * from sysobjects where name='banfei' and xtype='U'
的写法严格来说是错误的,比如你的数据库用sa建立一个banfei表,用user1也建立一个banfei表,这个语句返回两条记录,而
select * from dbo.sysobjects where id = object_id(N'[dbo].[banfei]')
and OBJECTPROPERTY(id, N'IsUserTable') = 1
返回一条记录,也就是说后一语句可以区分数据对象的所有者。