mysql的基本操作CRUD (#.#)
1.數(shù)據(jù)庫CURD
對數(shù)據(jù)庫進行增(create)、刪(delete)、改(update)、查(Retrieve)操作。
1.1創(chuàng)建數(shù)據(jù)庫
創(chuàng)建一個名稱為mydb1的數(shù)據(jù)庫。
create database mydb1;
創(chuàng)建一個使用utf-8字符集的mydb2數(shù)據(jù)庫。
create database mydb2 character set utf8;
創(chuàng)建一個使用utf-8字符集,并帶校對規(guī)則的mydb3數(shù)據(jù)庫。會對存入的數(shù)據(jù)進行檢查。
create database mydb3 character set utf8 collate utf8_general_ci;
1.2查看數(shù)據(jù)庫
顯示所有數(shù)據(jù)庫
show databases;
顯示創(chuàng)建數(shù)據(jù)庫的語句信息
show create database mydb2;
“ ` ”(ESC鍵 下面的按鍵),表示反引號,默認情況下,反引號括起來的字符串,區(qū)分大小寫。
show create database mydb1;
注意 :mysql默認語言集是latin1,每次在創(chuàng)建數(shù)據(jù)庫的時候應指定字符集。Oracle是在安裝時,即指定了字符集。
1.3修改數(shù)據(jù)庫
修改mydb1的字符集為utf8(不能修改數(shù)據(jù)庫名)
alter database mydb1 character set utf8;
1.4刪除數(shù)據(jù)庫
刪除數(shù)據(jù)庫mydb3
drop database mydb3;
2.表的CURD
對表本身進行操作:創(chuàng)建,查看,修改,刪除
MySQL的數(shù)據(jù)類型
https://blog.csdn.net/weixin_45525272/article/details/107979163
2.1創(chuàng)建表
create table t1 (id int, name varchar(20))
但此時會報錯誤:ERROR 1046 (3D000): No database selected。注意,在mysql中對表操作前,必須先選擇所使用的數(shù)據(jù)庫。
use mydb2;
查看當前選擇的數(shù)據(jù)庫中的表:
show tables;
查看表結(jié)構(gòu):
desc t1;
在Mysql中顯示多行數(shù)據(jù)應該在查詢語句結(jié)尾處添加 \G來替換結(jié)束標記“;”
查看創(chuàng)建表的語法:
show create table t1; ENGINE=InnoDB 默認指定的存儲引擎 innoDB。
例如:創(chuàng)建一個員工表:
create table employee(empno int, ename varchar(20), sal int);
后面表的代碼以此例為照應
2.2查看表
查看所有的表:
show tables;
查看指定表的創(chuàng)建語句
show create table employee;
注意,mysql表名稱區(qū)分大小寫
顯示指定表的結(jié)構(gòu):
desc employee;
2.3修改表
更改表名: rename table employee to worker;
增加一個字段:alter table employee add column height double;
(column關(guān)鍵字在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;
3.2.4刪除表
刪除employee表
drop table employee;
(MySQL中不能使用purge,添加會出現(xiàn)語法錯誤)
3.表數(shù)據(jù)的CURD
3.1create數(shù)據(jù)
創(chuàng)建一個員工表,新建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','一個小菜');
3.2update數(shù)據(jù)
將所有員工薪水都增加500元。
update employee set salary=salary+500;
將王五的員工薪水修改為10000元,resume改為也是一個中流
update employee set salary=10000, resume='也是一個中流' where name='王五';
3.3delete數(shù)據(jù)
刪除表中姓名為王五的記錄。
delete from employee where name='王五';
【注意from不能省略】
刪除表中所有記錄。
delete from employee;
使用truncate刪除表中記錄。
truncate employee;
(無條件 效率高)
3.4Retrieve數(shù)據(jù)( 檢索數(shù)據(jù)O(∩_∩)O)
檢索誰的id>2
select id, name as "名字", salary "月薪", salary*12 年薪 from employee where id >=2;
以上知識綜合案例
https://blog.csdn.net/weixin_45525272/article/details/107979557