加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

Sql Server中判断表、列不存在则构建的方法

发布时间:2023-07-22 15:08:18 所属栏目:MsSql教程 来源:
导读:一、sql Server中如何判断表中某列是否存在

首先跟大家分享sql Server中判断表中某列是否存在的两个方法,方法示例如下:

比如说要判断表A中的字段C是否存在两个方法:

第一种方法

rush:sql;"> IF E
一、sql Server中如何判断表中某列是否存在
 
首先跟大家分享sql Server中判断表中某列是否存在的两个方法,方法示例如下:
 
比如说要判断表A中的字段C是否存在两个方法:
 
第一种方法
 
rush:sql;"> IF EXISTS ( SELECT 1 FROM SYSOBJECTS T1 INNER JOIN SYSCOLUMNS T2 ON T1.ID=T2.ID WHERE T1.NAME='A' AND T2.NAME='C' ) PRINT '存在' ELSE PRINT '不存在'
 
第二种方法,短小精悍,可谓精典
 
rush:sql;"> IF COL_LENGTH('A','C') IS NOT NULL PRINT N'存在' ELSE PRINT N'不存在'
 
方法一:
 
rush:sql;"> select * from syscolumns where id=object_id('表名') and name='列名'
 
说明:存在则返回此列的一条说明记录,不存在返回空;
 
方法二:
 
rush:sql;"> select count(*) from sysobjects a,syscolumns b where a.id=b.id and b.name='flag1' and a.type='u' and a.name='T_Pro_ProductClass'
 
说明:存在返回1,不存在则返回0
 
sql Server中判断表、列是否存在,如果不存在则创建
 
一、表不存在则创建:
 
rush:sql;"> if not exists (select * from sysobjects where id = object_id('mytab') and OBJECTPROPERTY(id,'IsUserTable') = 1) create table mytab ( id int,age int,name varchar(max),primary key (id,age) ) go
 
二、列不存在则创建。
 
rush:sql;"> if not exists (select * from syscolumns where id=object_id('mytab') and name='columnname') alter table [mytab] add columnname nvarchar(max)
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章