SQLSERVER实现更改表名,更改列名,更改约束代码
1.修改表名
格式:sp_rename tablename,newtablename
|
1
|
sp_rename tablename,newtablename |
2.修改字段名
格式:sp_rename 'tablename.colname',newcolname,'column'
|
1
|
sp_rename 'tablename.colname',newcolname,'column' |
3.添加字段
格式:alter table table_name add new_column data_type [interality_codition]
示例1
|
1
|
ALTER TABLE student Add nationality varchar(20) |
--示例2 添加int类型的列,默认值为 0
|
1
2
3
4
5
|
alter table student add studentName int default 0 --示例3 添加int类型的列,默认值为0,主键 alter table student add studentId int primary key default 0 --示例4 判断student中是否存在name字段且删除字段 if exists(select * from syscolumns where id=object_id('student') and name='name') beginalter table student DROP COLUMN nameend |
4.更改字段
格式:alter table table_name alter column column_name
|
1
|
ALTER TABLE student ALTER COLUMN name VARCHAR(200) |
5.删除字段
格式:alter table table_name drop column column_name
|
1
|
ALTER TABLE student DROP COLUMN nationality; |
6.查看字段约束
格式: select * from information_schema.constraint_column_usage where TABLE_NAME = table_name
|
1
2
|
SELECT TABLE_NAME,COLUMN_NAME,CONSTRAINT_NAME FROM information_schema.CONSTRAINT_COLUMN_USAGEWHERE TABLE_NAME = 'student' |
7.查看字段缺省约束表达式 (即默认值等)
格式:select * from information_schema.columns where TABLE_NAME = table_name
|
1
2
|
SELECT TABLE_NAME, COLUMN_NAME, COLUMN_DEFAULT FROM information_schema.COLUMNSWHERE TABLE_NAME='student' |
8.查看字段缺省约束名
格式:select name from sysobjects where object_id(table_name)=parent_obj and xtype='D'
|
1
2
|
select name from sysobjectswhere object_id('表?名?')=parent_obj and xtype='D' |
9.删除字段约束
格式:alter table tablename drop constraint constraintname
|
1
|
ALTER TABLE student DROP CONSTRAINT PK__student__2F36BC5B772B9A0B |
10.添加字段约束
格式:alter table tablename add constraint constraintname primary key (column_name)
--示例1
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
ALTER TABLE stuInfo ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo) --示例2 添加主键约束(Primary Key)-- 存在主键约束PK_stuNO,则删除 IF EXISTS(SELECT * FROM sysobjects WHERE name='PK_stuNo' and xtype='PK')Alter TABLE stuInfoDrop Constraint PK_stuNoGo -- 重新添加主键约束PK_stuNO ALTER TABLE stuInfo ADD CONSTRAINT PK_stuNo PRIMARY KEY (stuNo)Go --示例3 添加 唯一UQ约束(Unique Constraint)-- 存在唯一约束UQ_stuNO,则删除 IF EXISTS(SELECT * FROM sysobjects WHERE name='UQ_stuID' and xtype='UQ')Alter TABLE stuInfoDrop Constraint UQ_stuIDGo -- 重新添加唯一约束UQ_stuID ALTER TABLE stuInfo ADD CONSTRAINT UQ_stuID UNIQUE (stuID) --示例4 添加默认DF约束(Default Constraint)-- 存在默认约束UQ_stuNO,则删除 IF EXISTS(SELECT * FROM sysobjects WHERE name='DF_stuAddress' and xtype='D')Alter TABLE stuInfo Drop Constraint DF_stuAddressGo -- 重新添加默认约束DF_stuAddress ALTER TABLE stuInfo ADD CONSTRAINT DF_stuAddress DEFAULT ('地址不详') FOR stuAddress --示例5 检查CK约束(Check Constraint)-- 存在检查约束UQ_stuNO,则删除 IF EXISTS(SELECT * FROM sysobjects WHERE name='CK_stuAge' and xtype='C')Alter TABLE stuInfo Drop Cons |
SQLSERVER实现更改表名,更改列名,更改约束代码的更多相关文章
- Oracle表名、列名、约束名的长度限制
Oracle数据库版本11.2.0.1.0 Oracle表名.列名.约束名的长度限制 1.查询用户所有的表 select * from USER_TABLES; 2.查询用户所有表的列 select ...
- c#获得目标服务器中所有数据库名、表名、列名的实现代码
/// <summary> /// 获得目标服务器所有数据库名 /// </summary> /// <param name="serverName" ...
- ylb:sql语句重命名表名和列名
ylbtech-SQL Server:SQL Server-sql语句重命名表名和列名 sql语句重命名表名和列名 ylb:sql语句重命名表名和列名 返回顶部 一.更改数据库名 sp_rena ...
- postgresql 字段sql语句 更改表名
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/sq8706/article/detail ...
- Mysql更改表名大小写不敏感
编辑配置文件 vi /etc/my.cnf 在[mysqld]后添加添加 lower_case_table_names=1 重启服务 service mysqld stop service mysql ...
- MySQL数据库表名、列名、别名区分大小写的问题
MySQL在Linux下数据库名.表名.列名.别名大小写规则是这样的: 1.数据库名与表名是严格区分大小写的: 2.表的别名是严格区分大小写的: 3.列名与列的别名在所有的情况下均是忽略大小写的: 4 ...
- MySQL表名、列名区分大小写详解
前言:出现的问题 在本地数据库上执行修改银行卡没有报错 但线上执行报错 发现是表找不到,发现表名不对应该是card_cardinfo,但本地上没有问题,能正常修改,然后在数据库里测试,发现本地库(wi ...
- sqlserver 常见的表名修改
查看表:exec sp_help 表名 查看列: exec sp_columns 表名 查看列:select * from information_schema.columns where table ...
- JPA中自动使用@Table(name = "userTab")后自动将表名、列名添加了下划线的问题
一.问题 JPA中自动使用@Table(name = "userTab")后自动将表名.列名添加了下划线的问题,如下图: 二.解决 在application.properties文 ...
- Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作
一.Hive分区表新增字段 参考博客:https://blog.csdn.net/yeweiouyang/article/details/44851459 二.Hive修改表名,列名,列注释,表注释, ...
随机推荐
- ASP.NET没有魔法——目录
ASP.NET没有魔法——开篇-用VS创建一个ASP.NET Web程序 ASP.NET没有魔法——为什么使用ASP.NET ASP.NET没有魔法——第一个ASP.NET应用<MyBlog&g ...
- VS2017 编译 chromium和webrtc
Chromium的编译和WebRTC的编译方式相同,WebRTC官网也是使用的Chromium的编译文档. 步骤一.跳 - 墙,先跳 - 墙这是第一步哟,chromium大概有10几个G,webrtc ...
- HDU5661 Claris and XOR
我们求二进制是怎么求的呢:先看看二进制的每一位代表多大:.......32 16 8 4 2 1 假如n=10, ..... 32>n ,不要. 16>n,不要. 8<=n,要,然后 ...
- Jquery跨域读取城市天气预报信息
最新项目中遇到一个问题,页面需要显示一些天气信息,但是部署网站的服务器没连接外网,只有客户端的电脑能连外网,于是想用js去实现这个功能. 刚开始找了一些方法,单独在浏览器中可以使用,但是在项目中运行的 ...
- win10 UWP MessageDialog 和 ContentDialog
我之前开发一个软件 winMarkdown,这个软件在关闭需要提示用户还没有保存东西,需要保存,如果用户选择退出,那么把数据存放. 在Metro程序中,没有传统的窗口,当我们要用需要交互的消息提示时, ...
- 简说chart2.4的应用,以及Uncaught ReferenceError : require is not defined的解决
51呢最近在学习chart.js,然后呢就照着中文的帮助文档来然后就一直出Uncaught ReferenceError : require is not defined的问题查了挺多才知道是帮助文档 ...
- mysql主从复制的异步复制与同步复制
异 步复制:MySQL本身支持单向的.异步的复制.异步复制意味着在把数据从一台机器拷贝到另一台机器时有一个延时 – 最重要的是这意味着当应用系统的事务提交已经确认时数据并不能在同一时刻拷贝/应用到从机 ...
- Iozone
参考地址:iozone使用技巧.iozone和Fio安装测试说明 iozone介绍 iozone(www.iozone.org)是一个文件系统的benchmark工具,可以测试不同的操作系统中文件系统 ...
- 242. Valid Anagram(leetcode)
Given two strings s and t, write a function to determine if t is an anagram of s. For example, s = & ...
- 65、django之模型层(model)--添加、单表查询、修改基础
上篇带大家简单做了一下图书表的创建.简单的查看和删除,今天会先简单介绍添加和修改,因为添加和修改与删除一样都很简单,本篇会相对多介绍一点单表查询,大家都知道数据库中查询是最重要的一部分,毕竟无论是修改 ...