SQL中在做查询时怎样给某一个字段重命名

SQL中在做查询时怎样给某一个字段重命名,第1张

MySQL中,如何使用SQL语句来对表中某一个字段进行重命名呢?我们将使用alter table 这一SQL语句。

重命名字段的语法为:alter table <表名> change <字段名> <字段新名称> <字段的类型>。

现在我们来尝试把test表中的t_name字段重命名为t_name_new字段。

1、首先查看一下当前test表的`结构

mysql> describe test;

+------------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+------------+-------------+------+-----+---------+-------+

| t_id | int(11) | YES | | NULL | |

| t_name | var20) | YES | | NULL | |

| t_password | 32) | YES | | NULL | |

| t_birth | date | YES | | NULL | |

+------------+-------------+------+-----+---------+-------+

4 rows in set (000 sec)

2、使用alter table语句来修改字段名称

mysql> alter table test change t_name t_name_new var20);

Query OK, 0 rows affected (011 sec)

Records: 0 Duplicates: 0 Warnings: 0

3、查看修改过后的结果

mysql> describe test;

+------------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+------------+-------------+------+-----+---------+-------+

| t_id | int(11) | YES | | NULL | |

| t_name_new | var20) | YES | | NULL | |

| t_password | 32) | YES | | NULL | |

| t_birth | date | YES | | NULL | |

+------------+-------------+------+-----+---------+-------+

4 rows in set (000 sec)

至此,我们可以顺利的修改表中字段名称了。

关于MySQL中使用SQL语句对字段进行重命名,本文就介绍这么多,希望对大家有所帮助,谢谢!

;     SQL 查询中重命名使用as来处理,语法:select 字段名 as 重命名

      1、as可理解为:用作、当成,作为;一般式重命名列名或者表名。

      2、例如:

      有表table, 列 column_1,column_2

      可以写成 select column_1 as 列1,column_2 as 列2 from table as 表

      上面的语句就可以解释为,选择 column_1 作为 列1,column_2 作为 列2 从 table 当表

企业管理器

--右键"数据库"--所有任务--还原数据库

--"还原为数据库库"中输入还原后的数据库名Admin10000com

--还原选择"从设备"--选择设备--添加--添加你的

备份文件

--确定,回到数据库还原的界面

--备份号--选择内容--选择你要恢复那次备份的内容

--选项--将"移至物理文件名"中的物理文件名修改为你的

数据文件

要存放的文件名,这里修改为Admin10000com_DataMDF(

数据库文件

)和Admin10000com_LogLDF(

日志文件

)

--如果要还原的数据库已经存在,选择"在现有数据库上强制还原"

--确定

sql server中改名用函数:sp_rename

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

语法如下:

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

参数:

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

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

3 [@objtype =] 'object_type' 是要重命名的对象的类型。object_type 为 varchar(13) 类型,其默认值为 NULL,可取下列值。

注意:

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

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

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

修改列A名为B:

sp_rename 'table1colname','B','A'

代码如下:

EXEC sp_rename '表名[原列名]', '新列名', 'column'

Transact-SQL 参考

sp_rename

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

语法

sp_rename [ @objname = ] 'object_name' ,

[ @newname = ] 'new_name'

[ , [ @objtype = ] 'object_type' ]

参数

[@objname =] 'object_name'

是用户对象(表、视图、列、存储过程、触发器、默认值、数据库、对象或规则)或数据类型的当前名称。如果要重命名的对象是表中的一列,那么 object_name 必须为 tablecolumn 形式。如果要重命名的是索引,那么 object_name 必须为 tableindex 形式。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

系统存储过程

注:系统数据表不能改

常见的主要有三种方法:

如果所有表都是MyISAM类型的话,可以直接修改文件夹的名字。关闭mysql→把data目录中的db_name目录重命名为new_db_name→开启mysql

新建数据库,在新的数据库里重命名所有旧数据库中的表,再删除旧的数据库。具体 *** 作命令如下:创建新的数据库→重命名数据表名称→删除旧的数据库。

CREATE DATABASE new_db_name;RENAME TABLE db_nametable1 TO new_db_nametable1,db_nametable2 TO new_db_nametable2;DROP DATABASE db_name;

利用mysqldump命令从旧的数据导出数据,再导入新数据库。具体 *** 作命令如下:导出数据→创建新的数据库→导入数据→删除旧的数据库。

mysqldump -u root -p -h ip db_name > db_name_dumpSQLmysql -u root -p -h ip -e “CREATE DATABASE new_db_name”mysql -u root -p -h ip new_db_name < db_name_dumpSQLmysql -u root -p -h ip -e “DROP DATABASE db_name”

以上就是关于SQL中在做查询时怎样给某一个字段重命名全部的内容,包括:SQL中在做查询时怎样给某一个字段重命名、SQL中在做查询时怎样给列重命名、如何对SQLServer数据库进行重命名等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9808971.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存