mysql 命令重命名表RENAME TABLE 句法

mysql 命令重命名表RENAME TABLE 句法

RENAME TABLE tbl_name TO new_tbl_name[, tbl_name2 TO 
new_tbl_name2,...]
更名是以原子方式(atomically)执行,这就意味着,当更名正在运行时,其它的任何线程均不能该表。这使得以一个空表替换一个表成为可能。

CREATE TABLE new_table (...);
RENAME TABLE old_table TO backup_table, new_table TO old_table;
改名是从左到右执行的,这就意味着,如果你希望交换两个表名,你不得不这样做:

RENAME TABLE old_table    TO backup_table,
             new_table    TO old_table,
             backup_table TO new_table;
只要两个数据库在同一个磁盘上,你也可以从一个数据库更名到另一个数据库:

RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
当你执行 RENAME 时,你不能有任何锁定的表或活动的事务。你同样也必须有对原初表的 ALTER 和 DROP 权限,以及对新表的 CREATE 和 INSERT 权限。

如果在多表更名中,MySQL 遭遇到任何错误,它将对所有被更名的表进行倒退更名,将每件事物退回到最初状态。

RENAME TABLE 在 MySQL 3.23.23 中被加入。

时间: 2024-10-25 10:59:16

mysql 命令重命名表RENAME TABLE 句法的相关文章

小例子: 语录文件重命名(mv + rename)

分析: 语录下载时是按时期打包的; 全部解压到一个文件夹时,关于编号问题,操作起来很不方便; 特此给语录重新编号; 无需在意原先时期编号问题; 重新建立惯性思维模式; 统计语录文件总个数用来表示循环中的前缀变量 -> 重命名规则: 保留源文件的信息到文本中 给音频文件添加前缀 命名时名字的顺序不需要固定 每一个音频是一个单独的故事,虽然时期不同到不用让时期保持连贯,打破固有思维,重新建立视听循环. 从001开始到文件的个数总和结束 eg: audio.mp3 -> 001.audio.mp3

数据库常用操作记录:新加列、重命名列、修改列长度和类型、删除列、重命名表名等

1.在数据库已有的表中 增加一个新列 语句:alter table 表名 add 列名 类型 例:ALTER myuser ADD userdesc VARCHAR(50); 2.为数据库中已有的表中的列 重命名 语句:alter table 表名 rename column 原列名 to 新列名; 例:alter table myuser rename column attrname to pk_Group; 3.为数据库中已有的表中的列 修改长度和类型 语句:alter table 表名 m

详解MYSQL中重命名procedure的一种方法

最近有用到对存储过程(procedure)重命名的功能,在网上找了一下资料都没有讲到在mysql中是如何实现的,当然可以删掉再重建,但是应该有别的方法,在“mysql”这个数据库(自带)中找了一下,发现两张表:func.proc,发现func表是空的,proc表记录了有关procedure和function有关的信息. 尝试对proc表进行更新,重命名成功了! 原文地址:https://www.cnblogs.com/tacatno/p/10921942.html

mysql命令修复数据库表开心乐园源码

REPAIR TABLE `table_name` 修复表  (只对oa开心乐园源码搭建q3191355031有效)OPTIMIZE TABLE `table_name` 优化表 REPAIR TABLE 用于修复被破坏的表.OPTIMIZE TABLE 用于回收闲置的数据库空间,当表上的数据行被删除时,所占据的磁盘空间并没有立即被回收,使用了OPTIMIZE TABLE命令后这些空间将被回收,并且对磁盘上的数据行进行重排(注意:是磁盘上,而非数据库). 多数时间并不需要运行OPTIMIZE T

Linux命令-重命名文件和文件夹(mv)

linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹. 例子:将目录A重命名为B mv A B 例子:将/a目录移动到/b下,并重命名为c mv /a /b/c

mysql数据库重命名

mysql 1.4以前 rename database old_name to new_name; 高于1.4就没这个命令了,那怎么办呢?把原来的库导出来,然后删掉.再新建新名字的库,然后把导出的数据导入进去. 获取删除数据库表sql的命令: select concat('drop table ',table_name,';') from  INFORMATION_SCHEMA.TABLES where table_schema='数据库名' into outfile '/tmp/drop_ac

mysql命令导出数据库表数据

最常用的: mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql 这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数 C:\Users\jack> mysqldump -uroot -pmysql sva_rec date_drv > e:\date_drv.sql mysql的数据导入

SQL Server ->> 表转移Schema和重命名表

ALTER SCHEMA Stage TRANSFER dbo.Stage_AAA; EXEC sp_rename 'Stage.Stage_AAA', 'AAA';

mysql命令添加表字段

常用的通过mysql命令来更改表结构的一些sql语句,包括添加.删除.修改字段.调整字段顺序. 添加字段: alter table `user_movement_log` Add column GatewayId int not null default 0 AFTER `Regionid`; (在哪个字段后面添加) 删除字段: alter table `user_movement_log` drop column Gatewayid; 调整字段顺序: ALTER TABLE `user_mov