说实话,感觉SQL Server的资料真的好难找(也有可能是很多人在吐槽的CSDN的搜索功能不够强……),我想找个修改表名的方法,结果找了好久,才找到一个可行的,留个纪念,希望也能够帮到你(多个人转发,搜的概率应该比较大!)。


一、利用ALTER语句修改?

alter语句的大概的语法是这样的:

ALTER TABLE <表名>
[ADD [COLUMN] <新列名><数据类型>[完整性约束]]
[ADD  <表级完整性约束>]
[DROP[COLUMN] <列名> [CASCADE|RESTRICT]]--注意:SqlServer取消了[CASCADE|RESTRICT]这两个项
[DROP CONSTRAINT <完整性约束名> [CASCADE|RESTRICT]]
[ALTER COLUMN <列名><数据类型>];
--准备事例
--Student表
CREATE TABLE Student(Sno  CHAR(9) PRIMARY KEY,Sname CHAR(8) NOT NULL,Ssex  CHAR(2) DEFAULT '男' CHECK (Ssex  IN ('男','女')),Sage  INT, Sdept  CHAR(20));
--建立索引
CREATE INDEX Stu_sno ON Student(Sno);--看下ALTER能不能满足要求:
--1.修改表名?好像不行!!!
--2.修改字段名?好像也不行!!!
ALTER TABLE Student rename column Sno to Stuno;--报错
--3.修改索引名?好像还是不行!!!--那ALTER能干啥呢?
--1.新增列
ALTER TABLE Student ADD S_entrance DATETIME;--向基本表Student中增加“入学时间”属性列。--2.新增约束
ALTER TABLE Course ADD UNIQUE(Cname);--对Course表,增加课程名称必须取唯一值的约束条件。--3.修改某字段的数据类型
ALTER TABLE Student ALTER COLUMN Sage SMALLINT;--将Student表中Sage(年龄)的数据类型改为SMALLINT型。

这一波好像不行,达不到我想要的要求,那就接着往下看吧。

二、调用系统的存储过程修改?

先了解下系统存储过程是啥?

存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集合,经编译后存储在数据库中,用户通过指定存储过程的名称并给出参数来执行。

系统存储过程是系统创建的存储过程,目的在于能够方便的从系统表中查询信息或完成与更新数据库表相关的管理任务或其他的系统管理任务。SQL Server系统的存储过程主要存储在master数据库中,以“sp”下划线开头的存储过程。尽管这些系统存储过程在master数据库中,但我们在其他数据库还是可以调用系统存储过程。有一些系统存储过程会在创建新的数据库的时候被自动创建在当前数据库中。

你可以在这里找到:

1. 修改表名

该存储过程的定义如下:

--修改表名
EXEC sp_rename @objname = '旧表名', @newname = '新表名'
EXEC sp_rename '旧表名', '新表名'--例1 把表TABLE1改为TABLE2
EXEC sp_rename @objname = 'TABLE1', @newname = 'TABLE2'--例2(简写)把表TABLE1改为TABLE2
EXEC sp_rename 'TABLE1','TABLE2'

2. 修改列名

--修改列名
EXEC sp_rename @objname = '表名.旧列名', @newname = '新列名', @objtype = 'column'
EXEC sp_rename '表名.旧列名', '新列名', 'column'--例1 把表TABLE的列tid改为id
EXEC sp_rename @objname = 'TABLE.tid', @newname = 'id', @objtype = 'column'--例2(简写)把表TABLE的列tid改为id
EXEC sp_rename 'TABLE.tid', @newname = 'id', @objtype = 'column'

3. 修改索引名

--修改索引名
EXEC sp_rename @objname = '表名.旧索引名', @newname = '新索引名', @objtype = 'index'
EXEC sp_rename '表名.旧索引名', '新索引名', 'index'--例1 把表TABLE的列tid改为id
EXEC sp_rename @objname = 'TABLE.IDX_TYPE_CODE', @newname = 'IDX_CODE', @objtype = 'index'--例2(简写)把表TABLE的索引IDX_TYPE_CODE改为IDX_CODE
EXEC sp_rename 'TABLE.IDX_TYPE_CODE', 'IDX_CODE', 'index'

OK可以满足要求。

部分内容参考:https://blog.csdn.net/mc_linfen/article/details/82115292

SQL Server修改表名,字段名,索引名相关推荐

  1. SQL Server修改表结构,表和列名加注释说明

    目录 1. SQL Server修改表结构 1.1 添加字段 1.2 删除字段 1.3 删除字段约束或键 1.4 修改字段类型 1.5 修改字段名 1.6 修改表名 2. 表和字段注释说明 2.1 添 ...

  2. columnproperty server sql_导出SQL Server数据库表中字段的说明/备注

    时 间:2013-02-18 09:09:11 作 者:摘 要:导出SQL Server数据库表中字段的说明/备注 正 文: 打开SQL企业管理器 ,找到你要导出用户表字段信息的那个数据库 ,点击工具 ...

  3. SQL Server修改表结构后批量更新所有视图

    --获取指定SQLServer数据库所有表及视图的字段列表及类型.长度 Select o.Name As ObjectsName , c.name As ColumnsName , t.name As ...

  4. SQL Server 将一个表中字段的值复制到另一个表的字段中

    原文:SQL Server 将一个表中字段的值复制到另一个表的字段中 具体方法如下 一:update 表2 set (要插入的列名)= select 表1.某一列 from 表1 left jion ...

  5. 数据库 SQL Server 修改 表结构 脚本 sql语句

    在使用一些表管理工具,或对数据库的物理表结构进行改动时,可以通过数据库的语法脚本实现. 1.创建表 CREATE TABLE dbo.表名(列名1 [列名数据类型](数据长度) 是否为Null,列名2 ...

  6. SQL Server修改表结构,添加约束

    文章目录 修改表结构 1.修改字段数据类型 2.添加字段 3.删除字段 4.修改字段特征(约束) 1>添加标识列约束(IDENTITY) 2>添加主键约束(PRIMARY KEY) 3&g ...

  7. SQL server 修改表数据

    使用SSMS数据库管理工具修改数据 修改任意一条或者多条都可以 1:打开数据库,选择数据表,右键点击->编辑所有行(如未配置,点击编辑前200行). 2.编辑需要修改的数据->编辑完成后, ...

  8. Sql Server给表、字段添加备注

    表添加备注: EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'备注内容' , @level0type=N'SCHEM ...

  9. 用MS SQL 语句修改表中字段类型

    [问题]用SQL 语句判断表中是否存在password字段,不存在则新增字段,若存在password字段,把字段的类型由int 类型改为text类型. [实现方法] if exists( select ...

最新文章

  1. 三星最新屏幕黑科技:可拉伸的OLED屏,能贴在皮肤上
  2. vue中数组长度_vue.js - 如何获得动态数组的数组长度 - SO中文参考 - www.soinside.com...
  3. (转)正则表达式语法备忘录
  4. go项目中使用数据库的配置文件
  5. python时间计算_python datetime库使用和时间加减计算
  6. Spring MVC上下文父子容器
  7. unity3d 人员控制代码
  8. 信息学奥赛一本通(1137:加密的病历单)
  9. CactiEZ中文版10.1与CAS单点登录
  10. 按网络管理模式 计算机网络可分为,计算机网络应用 按网络管理模式分类
  11. mysql5.7 jmeter_JMeter5连接Mysql数据库
  12. OpenCV:图像锐化
  13. 饥饿游戏3:嘲笑鸟(上)[The Hunger Games:Mockingjay - Part 1]
  14. Elastic Stack 开源的大数据解决方案
  15. 【火炉炼AI】机器学习044-创建隐马尔科夫模型
  16. uTorrent设置,防止出现磁盘负荷100%
  17. 计算机图形驱动程序原理,您知道更新计算机图形驱动程序的作用吗?怎么做
  18. 谁说江西没有区块链;BM:去中心化搜索引擎的时代到来了 | 一分钟链圈
  19. 接口自动化之操作mysql数据库
  20. Docker安装及部署

热门文章

  1. 聊聊高并发(六)实现几种自旋锁(一)
  2. 一文带你深入理解【Java基础】· 数组
  3. 2022面试题:HashMap相关问题硬核梳理
  4. Maccms8.x 命令执行分析
  5. 水晶报表2008新增功能点评及仍需改进之处
  6. 旅行青蛙前期怎么玩 新手入门必看攻略
  7. impdp、expdp监控数据备份恢复完成进度(EXPDP/IMPDP/RMAN)
  8. 云扩科技CTO史秋芳:筚路蓝缕,以启山林!做RPA行业的坚守者与创新者|数据猿专访...
  9. 零基础入门学习Java,如何快速打好基础?
  10. 独立AIGC潮头 昆仑万维发布昆仑天工AIGC全系列算法与模型