`
yinter
  • 浏览: 245092 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

用sql script修改表的列名

阅读更多
因需求变更要改表的列名,平常都是跑到Enterprise manager中选取服务器->数据库->表,然后修改表,这样太麻烦了,查了一下,可以用script搞定,
代码如下:
EXEC sp_rename '表名.[原列名]', '新列名', 'column'

******************************************************************************************************
Transact-SQL 参考


sp_rename
更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。

语法
sp_rename [ @objname = ] 'object_name' ,
    [ @newname = ] 'new_name'
    [ , [ @objtype = ] 'object_type' ]

参数
[@objname =] 'object_name'

是用户对象(表、视图、列、存储过程、触发器、默认值、数据库、对象或规则)或数据类型的当前名称。如果要重命名的对象是表中的一列,那么 object_name 必须为 table.column 形式。如果要重命名的是索引,那么 object_name 必须为 table.index 形式。object_name 为 nvarchar(776) 类型,无默认值。

[@newname =] 'new_name'

是指定对象的新名称。new_name 必须是名称的一部分,并且要遵循标识符的规则。newname 是 sysname 类型,无默认值。

[@objtype =] 'object_type'

是要重命名的对象的类型。object_type 为 varchar(13) 类型,其默认值为 NULL,可取下列值。

值 描述
COLUMN 要重命名的列。
DATABASE 用户定义的数据库。要重命名数据库时需用此选项。
INDEX 用户定义的索引。
OBJECT 在 sysobjects 中跟踪的类型的项目。例如,OBJECT 可用来重命名约束(CHECK、FOREIGN KEY、PRIMARY/UNIQUE KEY)、用户表、视图、存储过程、触发器和规则等对象。
USERDATATYPE 通过执行 sp_addtype 而添加的用户定义数据类型。


返回代码值
0(成功)或非零数字(失败)

注释
只能更改当前数据库中的对象名称或数据类型名称。大多数系统数据类型和系统对象的名称不能更改。

重命名视图时,sysobjects 表中有关该视图的信息将得到更新。重命名存储过程时,sysobjects 表中有关该过程的信息将得到更新。

每当重命名 PRIMARY KEY 或 UNIQUE 约束时,sp_rename 都会自动为相关联的索引重命名。如果重命名的索引与 PRIMARY KEY 约束相关联,那么 sp_rename 也会自动重命名主键。



重要  重命名存储过程和视图后,请清空过程高速缓存以确保所有相关的存储过程和视图都重新编译。


由于存储过程和视图都不存储数据,所以这两种对象均可快速删除和重建。重命名文本对象时,要获得最佳结果,应删除并使用其新名称重新创建对象。

权限
sysadmin 固定服务器角色成员、db_owner 和 db_ddladmin 固定数据库角色成员或对象所有者可以执行 sp_rename。只有 sysadmin 和 dbcreator 固定服务器角色成员才能将"database"作为 object_type 来执行 sp_rename。

示例
A. 重命名表
下例将表 customers 重命名为 custs。

EXEC sp_rename 'customers', 'custs'

B. 重命名列
下例将表 customers 中的列 contact title 重命名为 title。

EXEC sp_rename 'customers.[contact title]', 'title', 'COLUMN'


请参见

ALTER TABLE

CREATE DEFAULT

CREATE PROCEDURE

CREATE RULE

CREATE TABLE

CREATE TRIGGER

CREATE VIEW

数据类型

SETUSER

sp_addtype

sp_depends

sp_renamedb

系统存储过程

©1988-2000 Microsoft Corporation。保留所有权利。
分享到:
评论

相关推荐

    sql_script

    SQL脚本,正如标题"sql_script"所示,通常是指一系列有序的SQL语句,这些语句被组合在一起,以完成特定的数据库操作任务,如数据查询、插入、更新、删除,甚至创建或修改数据库结构。在数据库开发、数据分析、系统...

    SAP-HANA数据库SQL参考手册.pdf(中文版)

    在SAP HANA体系中,SQL语言的使用规则十分关键,它规定了如何在SAP HANA中执行数据的增加、删除、修改和查询操作。 在SAP HANA中,SQL语句的编写遵循一定的规则,包括标识符的使用、注释的书写方式、数据类型的确切...

    sql server DDL!

    在SQL Server中,DDL主要包括创建(CREATE)、修改(ALTER)和删除(DROP)等操作,用于管理数据库中的表、视图、索引、存储过程等对象。 #### 二、SQL Server DDL语法概述 ##### 1. 创建表(CREATE TABLE) 创建...

    sql 批量修改数据库表

    在SQL(Structured Query Language)中,批量修改数据库表通常涉及到多行更新操作,这在处理大量数据时非常有用。在给定的描述中,我们看到一个具体的示例,该示例涉及查找并替换数据库表中特定列的某些值。这个过程...

    SQL_PLUS命令的使用大全

    如果需要修改已经输入但尚未执行的SQL语句,你可以使用`EDIT`命令打开一个编辑器来编辑当前的输入。 3. **重运行上一条SQL语句** 只需输入一个斜杠`/`,SQL*PLUS就会执行上一条执行过的SQL语句,这对于重复执行...

    sql.plus命令大全

    当你需要修改输入的SQL语句时,可以使用`edit`命令打开默认的编辑器,编辑当前缓冲区中的内容。 3. **重新运行上一条SQL语句**: 输入`/`(斜线)命令,SQL*PLUS会重新执行上一条执行过的SQL语句,这对于快速重复...

    PowerDesign配置SqlServer2008建表脚本格式.docx

    本文将详细讲解如何使用PowerDesigner配置SQL Server 2008来创建符合规范的建表脚本,包括设置表和列的注释。 首先,我们需要在PowerDesigner中配置SQL Server 2008的建表脚本格式。这通常涉及到定制数据模型的过程...

    sql2000批量替换字段中的值,sql注入批量替换

    这种操作可以帮助快速修改数据库表中的特定字段值,比如去除某些非法内容或者更新过时的信息。 #### 一、基本概念与原理 1. **SQL Server 2000简介**: - SQL Server 2000是微软发布的一款关系型数据库管理系统...

    SQL*Plus之命令使用大集合.pdf

    ### SQL*Plus命令使用详解 #### 一、执行SQL脚本文件 - **命令**: `@脚本文件路径` - **功能**: 直接在SQL*Plus环境中执行指定路径下的SQL脚本文件。 - **示例**: `@C:\scripts\my_script.sql` #### 二、对当前...

    SQL—PLUS命令的使用大全

    `DESC`(或`DESCRIBE`)命令是SQL*PLUS中最常用的功能之一,用于快速查看表的结构,包括列名、数据类型和约束。 ```sql SQL> DESC table_name ``` 例如,`DESCRIBE employees`将列出`employees`表的所有列及其属性。...

    sql.zip_zip

    标题“sql.zip_zip”暗示了这是一...总之,这个压缩包“sql.zip”很可能包含了用于构建或修改数据库结构的SQL脚本,特别是创建新表的语句。通过理解SQL语法和这些基本概念,你可以有效地使用这些脚本来管理你的数据库。

    交互操作与SQL批处理的有机结合.pdf

    用户可以利用Power Builder的SQL Workshop或DataWindow的SQL Script功能,编写和测试复杂的SQL语句,然后将其整合到应用中,实现批处理操作。 此外,文章可能还讨论了如何通过宏或脚本语言(如PBScript)来自动化...

    SQL*PLUS命令的使用大全

    - `@script.sql`:执行指定的SQL脚本文件 - `SPOOL filename`:将输出重定向到文件,用于批量处理或生成报告 2. 动态SQL - 使用`EXECUTE`或`EXEC`执行PL/SQL块 - `EXECUTE IMMEDIATE`执行动态SQL语句 3. 错误...

    Oralce 12.1 SQL Plus

    - **数据库管理和维护**:如创建表、索引,修改表结构等。 - **数据查询与分析**:执行复杂查询,对数据进行统计分析。 - **性能调优**:通过执行 SQL 分析工具,找出性能瓶颈。 - **批量处理**:通过批处理脚本自动...

    数据库SQL*splus命令大全

    - 使用“/”运行保存在SQL\*Plus缓冲区中的SQL脚本。 9. **数据格式化** - `COLUMN column_name FORMAT format_specifier`: 设置列的显示格式。 - `COLUMN column_name HEADING 'Heading Name'`: 设置列的标题。...

    自己常用的sql语句

    在`kpy_create_table.sql`可能包含的内容中,创建表是Hive SQL的基本操作,通常会涉及到定义列名、数据类型和分区等。例如: ```sql CREATE TABLE IF NOT EXISTS sales ( sale_id INT, product STRING, sale_...

    批量修改“3b3.org/c.js”恶意注入SQL语句

    标题与描述中的关键词“批量修改”、“3b3.org/c.js”、“恶意注入SQL语句”,结合提供的部分代码,我们不难发现这是一个涉及到数据库安全、SQL注入攻击以及如何防范和修复此类攻击的知识点。以下是对这些概念的深入...

    SqlServer数据库语句大全

    - **修改表**: - **语法**: ``` ALTER TABLE table_name ADD | DROP | MODIFY column_name datatype [constraints]; ``` - **示例**: ```sql -- 在 employees 表中增加 phone_number 列 ALTER TABLE ...

    Oracle Sql基础 宝典系列1

    ### Oracle SQL基础宝典系列1... - **用子查询更新两列**:可以使用子查询的结果来更新表中的列。 以上就是《Oracle SQL基础宝典系列1》中的主要知识点概述,希望能帮助读者更好地理解和掌握Oracle SQL的基础知识。

Global site tag (gtag.js) - Google Analytics