一枯夜、【數據庫】
1堵漱、關系型數據庫
大型:Oracle、DB2
中型:SQL Server莱找、MySQL
小型:Access酬姆、SQLite等
2、非關系型數據庫:
Memcached奥溺、MongoDB辞色、Redis
3、兩種數據庫陣營的區(qū)別
(1)關系型數據庫:安全(保存磁盤浮定,基本不可能丟失)相满,容易理解,比較浪費空間(二維表)
(2)非關系型數據庫:效率高桦卒,不安全(斷電丟失)
4立美、什么是關系型數據庫
是一種建立在關系模型(數學模型)上的數據庫
關系模型:一種所謂建立在關系上的模型
關系模型包含三個方面:
數據結構:用于解決數據存儲的問題,二維表(有行和列)
操作指令集合:所有SQL語句
完整性約束:表內數據約束(字段與字段)方灾、表與表之間約束(外鍵)
二建蹄、【MySQL】
-- 查看所有數據庫
show databases;
-- 連接認證
mysql -u root -p
-- 退出命令
exit、quit裕偿、\q
-- 創(chuàng)建數據庫
create database mydatabase charset utf8;
-- 創(chuàng)建關鍵字數據庫
create database `database` charset utf8;
-- 告訴服務器當前中文的字符集是什么
set names gbk;
-- 創(chuàng)建中文數據庫
create database 中國 charset utf8;
-- 創(chuàng)建數據庫
create database informationtest charset utf8;
-- 查看以inforation_開始的數據庫(_需要被轉義)
show databaseslike 'information\_%';
show databaseslike 'information_%';-- 相當于information%
-- 查看書數據庫的創(chuàng)建語句
showcreate database mydatabase;
showcreate database `database`;
-- 修改數據庫inforationest的字符集
alter database informationtest charset GBK;
-- 刪除數據庫
drop database 數據庫的名字;
-- 創(chuàng)建表
create table ifnot exists mydatabase.student(
-- 顯示的將student表放到mydatabase數據庫下
namevarchar(10),
gendervarchar(10),
numbervarchar(10),
ageint
)charset utf8;
-- 創(chuàng)建數據表
-- 進入數據庫
use mydatabase;
-- 創(chuàng)建表
create table class(
namevarchar(10),
roomvarchar(10)
)charset utf8;
-- 查看所有表
show tables;
-- 查看部分表
-- 查看以s結尾的表
show tableslike '%s';
-- 查看表的創(chuàng)建語句
showcreate table student;
showcreate table student\g
showcreate table student\G-- 將查到的結構旋轉90度
-- 查看表結構
desc class;
describe class;
show columnsfrom class;
-- 重命名表(student表—> my_student)
renametable studentto my_student;
-- 修改表選項:字符集
alter table my_student charset = GBK;
-- 給學生表增加ID洞慎,放到第一個位置
alter table my_studentadd column idint first;
-- 將學生表中的number學號字段標出固定長度,且放到第二位(id之后)
alter table my_student modify numberchar(10) after id;
-- 修改學生表中的gender字段為sex
alter table my_student change gender sexvarchar(10);
-- 刪除學生表達中的age年齡字段
alter table my_studentdrop age;
-- 插入數據
insert into my_studentvalue
(1,'bc20190001','jim','male'),
(2,'bc20190001','lili','female')
;
-- 插入數據:制定字段列表
insert into my_student(number,name,sex,id)values
('bc20190001','tom','male',3),
('bc20190001','zhong','male',4);
-- 查看所有數據
select *from my_student;
-- 查看指定字段嘿棘、指定條件的數據
select id,number,sex,namefrom my_studentwhere id =1;
-- 更新數據
update my_studentset sex='female' where name ='jim';
-- 刪除數據
delete from my_studentwhere sex='male';