MYSQ系列-MYSQL基础增强(Mysql基本语句)

MYSQL基础增强

库操作

 1      创建一个使用UTF-8字符集的数据库:
 2      create database mydb character set UTF8;
 3 
 4      创建一个带校对集的数据库
 5      create database mydb character set UTF8 collate utf8_general_ci;
 6 
 7      查看所有数据库:
 8      show databases;
 9      show databases like 'pattern';
10 
11      显示数据库的创建信息
12      show create database mydb ;
13 
14      删除数据库:
15      drop database mydb ;
16 
17      修改库(库名不能修改,可以修改库的细节.)
18      alter database mydb character set gb2312;
19 
20      备份库(windows命令)
21      退出mysql客户端,quit,执行:
22      mysqldump -uroot -p mydb >c:	est.sql
23 
24      恢复库(只能恢复库的数据,不能恢复库,首先要创建库)
25      Mysql命令行恢复:
26      use mydb;
27      source d:ook.sql;
28      windows命令恢复:
29      mysql -uroot -p mydb<c:test.sql

表细节操作

 1     修改表的细节信息:增加列
 2     alter table books add classify varchar(40);
 3 
 4     查看表的创建细节:
 5     show create table employee;
 6     查看表的结构:
 7     desc books;
 8 
 9     修改bookname列的长度:修改列的细节
10     alter table books modify bookname varchar(60);
11 
12     修改列的细节
13     alter table users change column id id int;
14 
15     删除author列:
16     alter table books drop author;
17 
18     修改表名:
19     rename table books to book;
20 
21     修改表的字符集:
22     alter table users character set gb2312;
23 
24     修改列名:将user表的password列修改为userpass列
25     alter table user change column password userpass varchar(20);
26     删除表:
27     drop table users;

表操作

 1 规范建表:
 2 主键约束:primary key
 3 主键自动增长:auto_increment
 4 唯一约束:unique
 5 非空约束:not null
 6 外键约束:
 7     constraint ordersid_FK foreign key(ordersid) references orders(id)
 8     constraint :定义一个约束
 9     ordersid_FK :约束名称
10     foreign 外键约束
11     key(ordersid):约束谁
12     references orders(id) 参考谁
13 例1
14 create table test4(
15     id int primary key auto_increment,
16     name varchar(20) unique not null
17 );
18 例2.外键约束
19 create table card(
20     id int primary key,
21     name varchar(20)
22 );
23 create table users(
24 id int primary key,
25 name varchar(20),
26 card_id int,
27 constraint card_id_FK foreign key(card_id) references card(id)
28 );
29 insert into card(id,name) values(1,'aaa');
30 insert into users(id,name,card_id) values(1,'bbbb',1);
31 insert into users(id,name,card_id) values(2,'bbbb',2);//出错
32 会提示外键相关错误
33 
34 insert:
35 insert into users(id,name) values(1,'bbbb');
36 insert into users values(1,"aaa"),(2,"bbb"),(3,"ccc");//批量插入多条
37 insert into users set id=5,name='tom';//使用set插入数据
38 
39 update:
40 update users set name='tom';//将用户名改为tom,谨慎使用
41 update users set name='tom' where id=1;
42 update users set name='tom',sex='' where id=2;
43 update employee set sala=sala+1000 where username='tom';将tom员工的薪水加1000
44 
45 delete:
46 注意一定要与where语句配合使用,否则可能会删除所有记录
47 delete from table users where id=1;
48 delete from users;删除所有数据
49 truncate table employee;//删除表中所有记录,与上一个的不同是:如果表数据很多的话这个快一些,他是摧毁表再重建。使用它的话auto_increment会从1开始.
50 
51 select:
52 select * from users;
53 select id,name from users;
54 select distinct name from users;//去掉重复列
55 select name,(english+chinese+math+history) from student;//统计每个学生的总分
56 select * from student where name like '%李%';//查询姓名含有李的学生成绩
57 select * from student where name like '李_';//查询姓李的两个字的学生成绩
58 select name,math from student order by math desc;//根据数学成绩排序,默认升序
59 select count(*) from student;//统计个数
60 select count(*) from student where math>=90;//统计数学成绩大于90分的个数
61 ......其他功能查阅文档

相关网址:
Mysql5.x手册 http://doc.mysql.cn/
Mysql官网 http://dev.mysql.com/
Mysql5.7参考手册 http://dev.mysql.com/doc/refman/5.7/en/
其他参考手册
CSDN-Mysql知识库

author: liuning

原文地址:https://www.cnblogs.com/liun1994/p/5516649.html