| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1952 人关注过本帖
标题:[求助]请教如何判断一个SQL表中是否存在某个列?
只看楼主 加入收藏
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
 问题点数:0 回复次数:2 
[求助]请教如何判断一个SQL表中是否存在某个列?
如题。比如有表depart,已知里面有列id,name,但是不知道是否有列num,我如何用语句判断是否有这个列呢?返回值最好是一个逻辑值。谢谢了!
搜索更多相关主题的帖子: SQL 判断 name 
2007-08-29 09:40
siy513
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-8-4
收藏
得分:0 

use master
go

if exists(select * from sysobjects where name='depart')
drop table depart
create table depart
(
dId int,
dName varchar(20)
--,dNum int --要有这个列的话去掉注释就OK了
)
go

if exists(select * from sysobjects where name='view_name')
drop view view_name
go
create view view_name
as
select top 100 percent name
from syscolumns
where id=object_id('depart')
order by colorder
go
--select * from view_name

declare @count int
select @count= count(*) from view_name where name='dnum'
--print @count
declare @result bit --用来存放最后结果0表示没有dnum列,1表示有

if(@count=0)
set @result=0
else
set @result=1

print '结果为 '+ convert(varchar(1),@result)


好久没搞过了
试一下
不知道是否符合你的需要

2007-08-29 19:32
cobby
Rank: 1
等 级:新手上路
威 望:1
帖 子:565
专家分:0
注 册:2007-7-11
收藏
得分:0 
谢谢,已经搞定了,不过我用的是
select name from syscolumns where id=(select id from sysobjects where xtype='u' and name='"+table_name+"')
好不容易问到的呵。谢谢帮忙哦

努力成为菜鸟!
2007-08-30 14:56
快速回复:[求助]请教如何判断一个SQL表中是否存在某个列?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019036 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved