mysql數據庫的增刪改查有如下的幾種的狀況,html
一、DDL語句 數據庫定義語言: 數據庫、表、視圖、索引、存儲過程,例如CREATE DROP ALTER SHOWpython
二、DML語句 數據庫操縱語言: 插入數據INSERT、刪除數據DELETE、更新數據UPDATE、查詢數據SELECTmysql
三、DCL語句 數據庫控制語言: 例如控制用戶的訪問權限GRANT、REVOKEsql
在這裏咱們開始手擼一下mysql的增刪改查的代碼,視圖、索引等咱們以後再次的補充描述。數據庫
1.數據庫的增長服務器
create database xxx
ide
2.刪除數據庫學習
drop database xxx
code
3.改數據庫htm
alter database db1 charset latin1;
4.查詢數據庫
show databases;
而後咱們看一下表的增刪改查的操做,咱們在對錶進行操做的時候,咱們要先指明白要在那個數據庫下建立表,因此咱們這裏還須要提早再作一步操做,這個操做就是use 數據庫的名字
1.表的建立
create table xxx (id int primary key auto_increment,name char not null,sex enmu('female','male'));
咱們要記住建立表的語法結構就好了。
create table 表名( 字段名1 類型[(寬度) 約束條件], 字段名2 類型[(寬度) 約束條件], 字段名3 類型[(寬度) 約束條件] );
2.刪除表
drop table xxx
3.查看錶
show tables
4.表的改
1. 修改表名 ALTER TABLE 表名 RENAME 新表名; 2. 增長字段 ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…], ADD 字段名 數據類型 [完整性約束條件…]; 3. 刪除字段 ALTER TABLE 表名 DROP 字段名; 4. 修改字段 ALTER TABLE 表名 MODIFY 字段名 數據類型 [完整性約束條件…]; ALTER TABLE 表名 CHANGE 舊字段名 新字段名 舊數據類型 [完整性約束條件…]; ALTER TABLE 表名 CHANGE 舊字段名 新字段名 新數據類型 [完整性約束條件…]; 5.修改字段排列順序/在增長的時候指定字段位置 ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…] FIRST; ALTER TABLE 表名 ADD 字段名 數據類型 [完整性約束條件…] AFTER 字段名; ALTER TABLE 表名 CHANGE 字段名 舊字段名 新字段名 新數據類型 [完整性約束條件…] FIRST; ALTER TABLE 表名 MODIFY 字段名 數據類型 [完整性約束條件…] AFTER 字段名;
具體的操做的實例咱們參考博客園的地址爲:https://www.cnblogs.com/Eva-J/articles/9677452.html#_label7
5.查看錶的結構
desc 表名;
desc staff_info;
show create table 表名 \G
show create table staff_info\G;
數據庫表之間的關係,咱們要明白有三種的關係,而後咱們要將這三種關係弄明白,手擼一邊代碼。
一對多的關係:
create table press( id int primary key auto_increment, name varchar(20) ); create table book( id int primary key auto_increment, name varchar(20), press_id int not null, foreign key(press_id) references press(id) on delete cascade on update cascade );
一對一的關係
create table customer( -> id int primary key auto_increment, -> name varchar(20) not null, -> qq varchar(10) not null, -> phone char(16) not null -> ); create table student( -> id int primary key auto_increment, -> class_name varchar(20) not null, -> customer_id int unique, #該字段必定要是惟一的 -> foreign key(customer_id) references customer(id) #外鍵的字段必定要保證unique -> on delete cascade -> on update cascade -> );
多對多
create table book( id int primary key auto_increment, name varchar(20), press_id int not null, foreign key(press_id) references press(id) on delete cascade on update cascade ); create table author( id int primary key auto_increment, name varchar(20) ); #這張表就存放做者表與書表的關係,即查詢兩者的關係查這表就能夠了 create table author2book( id int not null unique auto_increment, author_id int not null, book_id int not null, constraint fk_author foreign key(author_id) references author(id) on delete cascade on update cascade, constraint fk_book foreign key(book_id) references book(id) on delete cascade on update cascade, primary key(author_id,book_id) );
咱們這裏再補充一些sql語句
登陸到數據庫服務器中:mysql -u 用戶名 -h ip地址 -p 密碼
select user();
查看當前的登陸的用戶。
select database();
查詢當前使用的數據庫。
set password = password('zhouqian');
create user 'zhouqian' @ '192.168.14.12' identified by '123';
grant 權限類型 on 數據庫(數據庫的名字).*(數據庫(數據庫的名字).表名) to 用戶('zhouqian' @ '192.168.14.%')
而後在最後咱們這裏要強調一點的就是,咱們要對數據庫的數據類型和完整性約束有一個熟悉的瞭解,在這裏我只是列舉出來,可是具體的學習你們自行去學習。
數據類型:int,float,date,datetime,char,varchar,enmu,set
約束條件:default,auto_increment,primary key,foreign key,not null,null,unique,
同時我在這裏給你們推薦兩篇的博客: