一、数据库的增删改查
1、创建数据库
创建一个名称为mydb1的数据库。
create database mydb1;
创建一个使用utf-8字符集的mydb2数据库。
create database mydb2 character set utf8;
2、查看数据库
显示所有数据库
show databases;
显示创建数据库的语句信息
show create database mydb2;
“ ` ”(ESC键 下面的按键),表示反引号,默认情况下,反引号括起来的字符串,区分大小写。
show create database mydb1;
注意 :mysql默认语言集是不是utf8,每次在创建数据库的时候应指定字符集。Oracle是在安装时,即指定了字符集。
3、修改数据库名称
修改mydb1的字符集为utf8(不能修改数据库名)
alter database mydb1 character set utf8;
4、删除数据库
删除数据库mydb3
drop database mydb3;
二、表的增删改查
1、创建表
create table t1 (id int, name varchar(20)) ;
但此时会报错误:ERROR 1046 (3D000): No database selected。注意,在mysql中对表操作前,必须先选择所使用的数据库。
**use mydb2;**
查看当前选择的数据库中的表:
show tables;
查看表结构:
desc t1;
查看创建表的语法:
show create table t1; ENGINE=InnoDB 默认指定的存储引擎 innoDB。
例如:创建一个员工表:
create table employee(empno int, ename varchar(20), sal int);
2、查看表
查看所有的表:
show tables;
查看指定表的创建语句
show create table employee;
注意,mysql表名称区分大小写
显示指定表的结构:
desc employee;
3、修改表
更改表名: rename table employee to worker;
增加一个字段:alter table employee add column height double;
(column关键字在Oracle中,添加则语法错误)
修改一个字段:alter table employee modify column height float;
修改字段名: alter table employee change column height height1 float;
删除一个字段:alter table employee drop column height1;
修改表的字符集:alter table employee character set gbk;
4、删除表
删除employee表
drop table employee;
(MySQL中不能使用purge,添加会出现语法错误)
三、表数据的增删改查
1、创建数据
update employee set salary=salary+500;
创建一个员工表,新建employee表并向表中添加一些记录:
create table employee(
id int,
name varchar(20),
sex int,
birthday date,
salary double,
entry_date date,
resume text
);
insert into employee values(1,'张三',1,'1983-04-27',15000,'2012-06-24','一个大牛');
insert into employee(id,name,sex,birthday,salary,entry_date,resume) values(2,'李四',1,'1984-02-22',10000,'2015-07-24','一个中流');
insert into employee(id,name,sex,birthday,salary,entry_date,resume) values(3,'王五',0,'1985-08-28',7000,'2018-08-24','一个小菜');
2、修改数据
将所有员工薪水都增加500元。
update employee set salary=salary+500;
将王五的员工薪水修改为10000元,resume改为也是一个中流
update employee set salary=10000, resume='也是一个中流' where name='王五';
3、删除数据
删除表中姓名为王五的记录。
delete from employee where name='王五';
【注意from不能省略】
删除表中所有记录。
delete from employee;
使用truncate删除表中记录。
truncate employee;
(无条件 效率高)
4、检索数据
检索谁的id>2
select id, name as "名字", salary "月薪", salary*12 年薪 from employee where id>2;