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' ) begin alter table student DROP COLUMN name end |
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_USAGE WHERE 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.COLUMNS WHERE TABLE_NAME= 'student' |
8.查看字段缺省约束名
格式:select name from sysobjects where object_id(table_name)=parent_obj and xtype='D'
1
2
|
select name from sysobjects where 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 stuInfo Drop Constraint PK_stuNo Go -- 重新添加主键约束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 stuInfo Drop Constraint UQ_stuID Go -- 重新添加唯一约束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_stuAddress Go -- 重新添加默认约束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修改表名,列名,列注释,表注释, ...
随机推荐
- Python单元测试框架
目录 概况 系统要求 使用PyUnit构建自己的测试 安装 测试用例介绍 创建一个简单测试用例 复用设置代码:创建固件 包含多个测试方法的测试用例类 将测试用例聚合成测试套件 嵌套测试用例 测试代码的 ...
- javascript小节
javascript 语法总结 知识概要: (1)Javascript概述 1.1javascript是什么? 1.2JavaScript语言组成 1.3JavaScript与Html的结 ...
- MVVM 模版里的控件怎样触发命令
public class BaseWindow : Window { public BaseWindow() { InitializeStyle(); //给样式的控件加载事件 this.Loaded ...
- elasticsearch高级组合查询ava
/** * 高级检索(组合条件检索)must相当于sql and操作 * @param modelType 0为模糊查询,1为精确查询 * @param index 索引 ...
- C#如何连接wifi和指定IP
大家好哈,这是我第一次写博客,我也是才大一结束,自学了10多天C#,有不对的欢迎大家指正,最近因为项目的事而被Wifi和IP折磨了很久,后来借用了一下外国人的SimpleWifi.dll 再自己写了一 ...
- 移动端效果之IndexList
写在前面 接着前面的移动端效果讲,这次讲解的的是IndexList的实现原理.效果如下: 代码请看这里:github 移动端效果之swiper 移动端效果之picker 移动端效果之cellSwipe ...
- win10 uwp 自定义控件 SplitViewItem
本文主要是因为汉堡菜单里面列出的菜单很多重复的图标和文字,我把它作为控件,因为是随便写,可能存在错误,如果发现了,请和我说或关掉浏览器,请不要发不良言论. 我们使用汉堡菜单,经常需要一个 需要一个图标 ...
- Python 第十三节 文件操作
A 1.首先文件读写操作有以下几种模式: a\a+ w\w+ r\r+ a模式:追加_写入模式,写入指针默认在开头,如果文件存在将在开头追加写入,如果文件不存在将创建文件再写入. a+模式: ...
- Express+Mongoose(MongoDB)+Vue2全栈微信商城项目全记录
最近用vue2做了一个微信商城项目,因为做的比较仓促,所以一边写一下整个流程,一边稍做优化. 项目github地址:https://github.com/seven9115/vue-fullstack ...
- Memcached理解
一.Memcached简介: 1. Memcached是一个自由开源的,高性能的,分布式内存对象缓存系统. 2. Memcached是一种基于内存的key-value存储,用来存储小块的任意数据(字符 ...