MySQL修改表结构操作命令总结
表的结构如下:
mysql> show create table person;
| person | CREATE TABLE `person` (
`number` int(11) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
`birthday` date DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 |
删除列:
ALTER TABLE person DROP COLUMN birthday;
添加列:
ALTER TABLE person ADD COLUMN birthday datetime;
修改列,把number修改为bigint:
ALTER TABLE person MODIFY number BIGINT NOT NULL;
或者是把number修改为id,类型为bigint:
ALTER TABLE person CHANGE number id BIGINT;
添加主键:
ALTER TABLE person ADD PRIMARY KEY (id);
删除主键:
ALTER TABLE person DROP PRIMARY KEY;
添加唯一索引:
ALTER TABLE person ADD UNIQUE name_unique_index (`name`);
为name这一列创建了唯一索引,索引的名字是name_unique_index.
添加普通索引:
ALTER TABLE person ADD INDEX birthday_index (`birthday`);
删除索引:
ALTER TABLE person DROP INDEX birthday_index;
ALTER TABLE person DROP INDEX name_unique_index;
禁用非唯一索引
ALTER TABLE person DISABLE KEYS;
ALTER TABLE...DISABLE KEYS让MySQL停止更新MyISAM表中的非唯一索引。
激活非唯一索引
ALTER TABLE person ENABLE KEYS;
ALTER TABLE ... ENABLE KEYS重新创建丢失的索引。
把表默认的字符集和所有字符列(CHAR, VARCHAR, TEXT)改为新的字符集:
ALTER TABLE person CONVERT TO CHARACTER SET utf8;
修改表某一列的编码
ALTER TABLE person CHANGE name name varchar(255) CHARACTER SET utf8;
仅仅改变一个表的默认字符集
ALTER TABLE person DEFAULT CHARACTER SET utf8;
修改表名
RENAME TABLE person TO person_other;
移动表到其他数据库
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
相关推荐
-
mysql表的清空、删除和修改操作详解
一.清除mysql表中数据 delete from 表名; truncate table 表名; 不带where参数的delete语句可以删除mysql表中所有内容,使用truncate table也可以清空mysql表中所有内容. 效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据. delete的效果有点像将mysql表中所有记录一条一条删除到删完, 而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表.
-
MySQL之终端Terminal(dos界面)管理数据库、数据表、数据的基本操作
MySQL有很多的可视化管理工具,比如"mysql-workbench"和"sequel-pro-". 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的理解透彻,因为我本来就比较喜欢写代码.同时写出来这些文章,是想要给大家当个参考,希望也能对大家有所帮助,有所提升,这就是我为什么要写终端操作MySQL的文章了. 注意:MySQL数据库命令不区分大小写.但在MAC的终端,如果你想使用tab自动补全命令,那么你就必须使用大
-
MySQL操作数据库和表的常用命令新手教程
我是新手 学习如何管理和导航MySQL数据库和表是要掌握的首要任务之一,下面的内容将主要对MySQL的数据库和表的一些常用命令进行总结,一些我们不得不掌握的命令,一些信手拈来的命令. 处理数据库 1.查看数据库 获取服务器上的数据库列表通常很有用.执行show databases;命令就可以搞定. 复制代码 代码如下: mysql> show databases; 2.创建数据库 复制代码 代码如下: mysql> create database db_test; Query OK, 1 ro
-
MySQL学习笔记3:表的基本操作介绍
要操作表首先需要选定数据库,因为表是存在于数据库内的 选择数据库 mysql> use school; Database changed 选择好数据库之后,我们就可以在此数据库之中创建表了 创建表 mysql> create table student( -> id int, -> name varchar(20), -> sex boolean -> ); Query OK, 0 rows affected (0.11 sec) create table用于创建表,后
-
MySQL中复制数据表中的数据到新表中的操作教程
MySQL是不支持SELECT - INTO语法的,使用INSERT INTO - SELECT替代相同用法,下面我们我们这里简答分一下新表存在和不存在两种情况,具体使用不同的语句. 1.新表不存在 复制表结构即数据到新表 create table new_table select * from old_talbe; 这种方法会将old_table中所有的内容都拷贝过来,用这种方法需要注意,new_table中没有了old_table中的primary key,Extra,auto_increm
-
mysql学习笔记之表的基本操作
创建表 create table 表名 create table if not exists 表名 mysql> create database company; Query OK, 1 row affected (0.00 sec) mysql> use company; Database changed mysql> create table if not exists t_dept( -> deptno int, -> dname varchar(20), ->
-
MySQL创建和删除表操作命令实例讲解
创建表 简单的方式 复制代码 代码如下: CREATE TABLE person ( number INT(11), name VARCHAR(255), birthday DATE ); 或者是 复制代码 代码如下: CREATE TABLE IF NOT EXISTS person ( number INT(11), name VARCHAR(255), birthday DATE ); 查看mysql创建表: 复制代码 代码如下: SHOW CREATE table person; CRE
-
MySQL修改表结构操作命令总结
表的结构如下: 复制代码 代码如下: mysql> show create table person; | person | CREATE TABLE `person` ( `number` int(11) DEFAULT NULL, `name` varchar(255) DEFAULT NULL, `birthday` date DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 | 删除列: 复制代码 代码如下: ALTER TA
-
mysql修改表结构方法实例详解
本文实例讲述了mysql修改表结构方法.分享给大家供大家参考.具体如下: mysql修改表结构使用ALTER TABLE语句,下面就为您详细介绍mysql修改表结构的语句写法,希望对您学习mysql修改表结构方面能有所帮助. ALTER [IGNORE] TABLE tbl_name alter_spec [, alter_spec ...] alter_specification: ADD [COLUMN] create_definition [FIRST | AFTER column_nam
-
mysql alter table命令修改表结构实例
mysql实例之使用alter table命令修改表结构 mysql alter table语句可以修改表的基本结构,例如添加字段.删除字段.添加主键.添加索引.修改字段数据类型.对表重命名等等操作,本文章通过两个简单的实例向大家介绍mysql alter table的使用方法 实例一:使用ALTER TABLE命令向表中添加字段.修改字段类型以及设置主键. 首先创建一个表,SQL语句如下: mysql> CREATE TABLE myTable( -> ID SMALLINT ->
-
mysql alter table命令修改表结构实例详解
mysql alter table语句可以修改表的基本结构,例如添加字段.删除字段.添加主键.添加索引.修改字段数据类型.对表重命名等等操作,本文章通过两个简单的实例向大家介绍mysql alter table的使用方法. 实例一:使用ALTER TABLE命令向表中添加字段.修改字段类型以及设置主键. 首先创建一个表,SQL语句如下: mysql> CREATE TABLE myTable( -> ID SMALLINT -> ); 使用desc命令查看表结构: mysql>
-
MySQL中修改表结构时需要注意的一些地方
MySql 在修改表结构的时候可能会中断产品的正常运行影响用户体验,甚至更坏的结果,丢失数据.不是所有的数据库管理员.程序员.系统管理员都非常了解Mysql能避免这种情况.DBA会经常碰到这种生产中断的情况,当升级脚本修改了应用层和数据库层,或者缺乏经验的管理员.开发在不是很了解Mysql内部工作机制的情况下修改了规范文件. 真相是: 直接修改表结构的过程中会锁表(在5.6版本之前) 在线的数据定义语言在5.6版本不总是在线的而且也会锁表 就算使用Percona工具包(在线修改定义文件)也会有若
-
MySQL数据库线上修改表结构的方法
目录 一.MDL元数据锁 1.什么是MDL锁 2.MDL锁的问题 二.如何线上修改MySQL表结构 一.MDL元数据锁 在修改表结构之前,先来看下可能存在的问题. 1.什么是MDL锁 MySQL有一个把锁,叫做MDL元数据锁,当对表修改的时候,会自动给表加上这把锁,也就是不需要自己显式使用. 当对表做增删改查的时候,加的是MDL读锁 当对表结构做变更修改的时候,加的是MDL写锁 读与读之间不互斥,读与写,写与写之间互斥,因此 当有一个线程对表执行增删盖茶的时候,会阻塞掉别的线程对表结构修改的请求
-
利用Python批量导出mysql数据库表结构的操作实例
目录 前言 解决方法 1. mysql 数据库 表信息查询 2.连接数据库代码 3.数据查询处理代码 3.0 配置信息 3.1查询数据库表 3.2 查询对应表结构 3.3 pandas进行数据保存导出excel 补充:python脚本快速生成mysql数据库结构文档 总结 前言 最近在公司售前售后同事遇到一些奇怪的需求找到我,需要提供公司一些项目数据库所有表的结构信息(字段名.类型.长度.是否主键.***.备注),虽然不是本职工作,但是作为python技能的拥有者看到这种需求还是觉得很容易的,但
-
sqlserver 2008手工修改表结构,表不能保存的问题与解决方法
如果点击"保存文本文件"将会弹出保存文本文件的对话框口, 保存的文本文件中的内容是如下: /* 2010年4月5日0:34:53 用户: 服务器: LONGGEL 数据库: longgel 应用程序: */ ChildCaiClass 保存的对于我来说简直是没用的信息,只是记录了事务的发生时间和一些相关信息,结果这样操作了数据库的结构还是没能修改并保存,而是继续弹出上面的那个窗口,这下我就郁闷了. 点击"取消"却弹出 同样也是没有完成表
-
MySQL修改表一次添加多个列(字段)和索引的方法
MySQL修改表一次添加多个列(字段) ALTER TABLE table_name ADD func varchar(50), ADD gene varchar(50), ADD genedetail varchar(50); MySQL修改表一次添加多个索引 ALTER TABLE table_name ADD INDEX idx1 ( `func`), ADD INDEX idx2 ( `func`,`gene`), ADD INDEX idx3( `genedetail`); 以上这篇
-
必须会的SQL语句(二) 创建表、修改表结构、删除表
1.创建数据库表 --使用哪个数据库,如果不写这一句是默认的数据库,也可以用鼠标选当前数据库 use testDB --创建表 Create Table tablename ( --id表示字段名 --int 数据类型 --primary key 主键 --not null 非空 --identity(1,1)初始值是1 每次自增长1 id int primary key not null identity(1,1), --unique 唯一 name varchar(20) not null
随机推荐
- 简单易用的基于jQuery版仿新浪微博向下滚动效果(附DEMO)
- js 正则表达式学习笔记之匹配字符串
- javascript中使用正则表达式删除前后空格的方法
- javascript学习笔记--数字格式类型
- XmlReader 读取器读取内存流 MemoryStream 的注意事项
- PHP和XSS跨站攻击的防范
- MySQL 绿色版安装方法图文教程
- 详谈js使用in和hasOwnProperty获取对象属性的区别
- php中debug_backtrace、debug_print_backtrace和匿名函数用法实例
- 基于 Node.js 实现前后端分离
- C++获取本机登陆过的QQ号码示例程序
- 浅析SQL存储过程和事务处理
- MySQL实现当前数据表的所有时间都增加或减少指定的时间间隔(推荐)
- JavaScript的21条基本知识点
- juqery 学习之三 选择器 子元素与表单
- Android Fragment 基本了解(图文介绍)
- SpringMVC Validator验证示例
- Java利用反射自动封装成实体对象的方法
- Android studio利用gradle打jar包并混淆的方法详解
- 详解C#借助.NET框架中的XmlTextReader类读取XML的方法