MySql 常用命令大全
2015-11-25 10:29
549 查看
1.登录数据库
>mysql -u root -p 数据库名称
2.查询所有数据库,数据表
>show databases;
>show tables;
3.查询表的字段信息
>desc 表名称;
4.1添加表字段
alter table table1 add transactor varchar(10) not Null;
alter table table1 add id int unsigned not Null auto_increment primary key
4.2.修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
4.3.修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空
4.4如果要删除某一字段,可用命令:ALTER TABLE mytable DROP 字段 名;
mysql> create table id_name(id int,name varchar(20));
Query OK, 0 rows affected (0.13 sec)
mysql> alter table id_name add age int,add address varchar(11);
Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc id_name;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| address | varchar(11) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
2.删除两个字段
mysql> alter table id_name drop column age,drop column address;
Query OK, 0 rows affected (0.14 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc id_name;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
3.插入
mysql> insert into id_name values (1,'qustdjx');
Query OK, 1 row affected (0.00 sec)
4.查询看一下
mysql> alter table id_name add age int,add address varchar(11);
Query OK, 1 row affected (0.07 sec)
Records: 1 Duplicates: 0 Warnings: 0
mysql> select * from id_name;
+------+---------+------+---------+
| id | name | age | address |
+------+---------+------+---------+
| 1 | qustdjx | NULL | NULL |
+------+---------+------+---------+
1 row in set (0.00 sec)
5.新增字段并插入
mysql> insert into id_name values(2,'qust',14,'山东');
Query OK, 1 row affected (0.00 sec)
mysql> select * from id_name;
+------+---------+------+---------+
| id | name | age | address |
+------+---------+------+---------+
| 1 | qustdjx | NULL | NULL |
| 2 | qust | 14 | 山东 |
+------+---------+------+---------+
2 rows in set (0.00 sec)
1.增加一个字段
alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; //增加一个字段,默认为空
alter table user add COLUMN new2 VARCHAR(20) NOT NULL; //增加一个字段,默认不能为空 www.2cto.com
2.删除一个字段
alter table user DROP COLUMN new2; //删除一个字段
3.修改一个字段
alter table user MODIFY new1 VARCHAR(10); //修改一个字段的类型
alter table user CHANGE new1 new4 int; //修改一个字段的名称,此时一定要重新指定该字段的类型
delete from 表名;
truncate table 表名;
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate
table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,
而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
>mysql -u root -p 数据库名称
2.查询所有数据库,数据表
>show databases;
>show tables;
3.查询表的字段信息
>desc 表名称;
4.1添加表字段
alter table table1 add transactor varchar(10) not Null;
alter table table1 add id int unsigned not Null auto_increment primary key
4.2.修改某个表的字段类型及指定为空或非空
>alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
>alter table 表名称 modify 字段名称 字段类型 [是否允许非空];
4.3.修改某个表的字段名称及指定为空或非空
>alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空
4.4如果要删除某一字段,可用命令:ALTER TABLE mytable DROP 字段 名;
mysql> create table id_name(id int,name varchar(20));
Query OK, 0 rows affected (0.13 sec)
mysql> alter table id_name add age int,add address varchar(11);
Query OK, 0 rows affected (0.13 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc id_name;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| address | varchar(11) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
2.删除两个字段
mysql> alter table id_name drop column age,drop column address;
Query OK, 0 rows affected (0.14 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> desc id_name;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
3.插入
mysql> insert into id_name values (1,'qustdjx');
Query OK, 1 row affected (0.00 sec)
4.查询看一下
mysql> alter table id_name add age int,add address varchar(11);
Query OK, 1 row affected (0.07 sec)
Records: 1 Duplicates: 0 Warnings: 0
mysql> select * from id_name;
+------+---------+------+---------+
| id | name | age | address |
+------+---------+------+---------+
| 1 | qustdjx | NULL | NULL |
+------+---------+------+---------+
1 row in set (0.00 sec)
5.新增字段并插入
mysql> insert into id_name values(2,'qust',14,'山东');
Query OK, 1 row affected (0.00 sec)
mysql> select * from id_name;
+------+---------+------+---------+
| id | name | age | address |
+------+---------+------+---------+
| 1 | qustdjx | NULL | NULL |
| 2 | qust | 14 | 山东 |
+------+---------+------+---------+
2 rows in set (0.00 sec)
1.增加一个字段
alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; //增加一个字段,默认为空
alter table user add COLUMN new2 VARCHAR(20) NOT NULL; //增加一个字段,默认不能为空 www.2cto.com
2.删除一个字段
alter table user DROP COLUMN new2; //删除一个字段
3.修改一个字段
alter table user MODIFY new1 VARCHAR(10); //修改一个字段的类型
alter table user CHANGE new1 new4 int; //修改一个字段的名称,此时一定要重新指定该字段的类型
清除mysql表中数据
delete from 表名;truncate table 表名;
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate
table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,
而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
相关文章推荐
- mysql 吴炳锡
- Windows下MySQL zip版的简单安装
- Mysql 取余集
- 【原创】MySQL 5.7 SYS系统SCHEMA
- 【原创】MySQL 5.7 SYS系统SCHEMA
- mysql命令
- MySQL 5.7 SYS系统SCHEMA
- mysql 用户管理和权限设置
- MYSQL中'TYPE=MyISAM'错误的解决方案
- MySQL 数据库双向同步复制
- powerdesiger创建mysql 数据库
- MySQL 入门教程
- mysql改为mysqli几项注意
- 源码编译安装mysql
- jdbc 链接mysql执行sql语句出现中文乱码问题
- MySQL decimal、numeric 和double数据类型
- MySQL解决中文乱码问题
- 我的第一篇博客(mysql只比较月日的情况)
- MySQL中表的复制以及大型数据表的备份教程
- 解决MySQL中的Slave延迟问题的基本教程