数据库操作无外乎增、删、改、查这几个主要的操作,接下来主要针对这几方面学习常用的命令。
1、进入/退出MySQL:
直接进入shell状态,输入root命令即可进入mysql>
退出的话,mysql>exit
2、创建数据库:
mysql> create database database_name;
执行成功会显示:Query OK,1 row affected <0.19 sec>
3、显示数据库:
mysql>show databases;
执行成功后会显示:
+---------------------+
| Database |
|mysql |
|** |
+----------------------|
4、删除数据库:
mysql>drop database db_name;
执行成功后显示:Query OK,0 row affected <0.54 sec>
5、连接/选择使用的数据库
mysql>use db_name;
执行成功后显示:Database changed
6、显示当前数据库相关信息:
(1)显示版本号:
mysql> show version();
(2)显示当前时间:
mysql> select now();
7、显示当前数据库中的表
mysql>show tables;
执行成功会显示表 的列表
8、显示某表的结构:
mysql>desc table_name;
执行成功后会显示表的结构。
9、创建表:
mysql>create table table_name(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));
10、删除表:
mysql> drop table table_name;
DROP TABLE用于取消一个或多个表。您必须有每个表的DROP权限。所有的表数据和表定义会被取消,所以使用本语句要小心!
对与不存在的表,使用IF EXISTS用于防止错误发生。当使用IF EXISTS时,对于每个不存在的表,会生成一个NOTE。
11、查询表中数据:
(1)查询所有信息:
mysql> select * from table_name;
执行成功后显示表中所有信息
(2)查询某一列信息,按照某种顺序
mysql>select columns_name_1 from table_name order by columns_name_2;// 按照columns_name_2升序 的顺序打印columns_name_1 信息。
(3)查询符合条件的行信息:
mysql> select * from table_name order by id limit 0,2;// 按照id顺序显示,大于0的2个信息。
mysql> select * from table_name where id>0 and id<3;//效果类似,ID在范围0-3之间的。
(4)查询符合条件的个数:
mysql> select count(column_name) from table_name where column_name=*;
(5)查询排名信息:
mysql>select * from table_name order by column_name desc limit 5;//前5名的信息,无desc的话,默认为升序排列。
(6)查询某种运算的结果排序信息:
mysql>select *,column_name_1+column_name_2+.. as total_sum from table_name order by total_sum;
//打印出所有列之和的升序排列顺序。
(7)计算函数的查询命令
计算一列之和:mysql>select sum(column_name_1) from table_name;
计算一列最大值:mysql>select max(column_name_1) from table_name;
计算一列最小值:mysql>select min(column_name_1) from table_name;
select一般配合where使用,以查询更精确更复杂的数据。
12、表插入数据:
mysql> insert into table_name values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
13、删除表中数据:
mysql> delete from table_name where id=1;
14、更改表中数据:
mysql> update table_name set name='Mary' where id=1;
例子1:单表的MySQL UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count]
例子2:多表的UPDATE语句:
UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition]
15、表中增加字段:
mysql> alter table table_name add passtest int(4) default '0'
加索引
mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
例子: mysql> alter table employee add index emp_name (name);
加主关键字的索引
mysql> alter table 表名 add primary key (字段名);
例子: mysql> alter table employee add primary key(id);
加唯一限制条件的索引
mysql> alter table 表名 add unique 索引名 (字段名);
例子: mysql> alter table employee add unique emp_name2(cardnumber);
删除某个索引
mysql> alter table 表名 drop index 索引名;
例子: mysql>alter table employee drop index emp_name;
增加字段:
mysql> ALTER TABLE table_name ADD field_name field_type;
修改原字段名称及类型:
mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
删除字段:
MySQL ALTER TABLE table_name DROP field_name;
注:
(1)由于习惯于Linux 的shell,总是忘记每一句之后的分号结束符,如果忘记了,则不会有正确结果,可以再输一遍正确的就行了。
(2)创建表的时候数据一个一个输入。
阅读(966) | 评论(0) | 转发(0) |