您的位置:首页 > 数据库 > MySQL

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;  //修改一个字段的名称,此时一定要重新指定该字段的类型


清除mysql表中数据

delete from 表名;
truncate table 表名;
不带where参数的delete语句可以删除mysql表中所有内容,使用truncate
table也可以清空mysql表中所有内容。
效率上truncate比delete快,但truncate删除后不记录mysql日志,不可以恢复数据。
delete的效果有点像将mysql表中所有记录一条一条删除到删完,
而truncate相当于保留mysql表的结构,重新创建了这个表,所有的状态都相当于新表。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: