插入
語法:
方式一:
insert into 表名(字段名,...)
values(值1,...);
方式二:
insert into 表名
set 列名=值,列名=值,....
特點(diǎn):
1、字段類型和值類型一致或兼容,而且一一對(duì)應(yīng)
2、可以為空的字段,可以不用插入值,或用null填充
3、不可以為空的字段,必須插入值
4、字段個(gè)數(shù)和值的個(gè)數(shù)必須一致
5、字段可以省略,但默認(rèn)所有字段,并且順序和表中的存儲(chǔ)順序一致
Eg.
#一、插入語句
SELECT
*
FROM
beauty;
#1.插入的值的類型要與列的類型一致或兼容
INSERT INTO beauty ( id, NAME, sex, borndate, phone, photo, boyfriend_id )
VALUES
( 13, '唐藝昕', '女', '1990-4-23', '1898888888', NULL, 2 );
#2.可以插入NULL值的列
#方式一:
INSERT INTO beauty ( id, NAME, sex, borndate, phone, photo, boyfriend_id )
VALUES
( 13, '唐藝昕', '女', '1990-4-23', '1898888888', NULL, 2 );
#方式二:
INSERT INTO beauty ( id, NAME, sex, borndate, phone )
VALUES
( 14, '金星', '女', '1990-4-23', '1398888888' );
#3.調(diào)整順序
INSERT INTO beauty ( NAME, sex, id, phone )
VALUES
( '蔣欣', '女', 16, '110' );
#4.列數(shù)必須和值的格式一致
#5.可以省略列名,默認(rèn)所有列,而且列的順序和表中列的順序一致
INSERT INTO beauty
VALUES
( 18, '張飛', '男', NULL, '119', NULL, NULL );
INSERT INTO beauty
SET id = 19,
NAME = '劉濤',
phone = '999';
INSERT INTO beauty ( id, NAME, phone ) SELECT
26,
'宋茜',
'11809866';
修改
修改單表語法:
update 表名 set 字段=新值,字段=新值
【where 篩選條件】
修改多表語法:
【sql92語法】
update 表1 別名1,表2 別名2
set 字段=新值,字段=新值
where 連接條件
and 篩選條件
【sql99】
update 表1 別名
inner|left|right hoin 表2 別名
on 連接條件
set 列=值,....
where 篩選條件;
Eg.
#二、修改語句
#1.修改單表的記錄
#案例一:修改beauty表中姓唐電話為13899888899
UPDATE beauty
SET phone = '13899888899'
WHERE NAME LIKE '%唐%';
#案例二:修改boys表中id為2的名稱為張飛,魅力值為10
UPDATE boys
SET boyName='張飛',userCP=10
WHERE id=2;
#2.修改多表的記錄
#案例一:修改張無忌的grilsfriend's phonenumber as 114
UPDATE boys bo
INNER JOIN beauty b ON bo.id =b.boyfriend_id
SET b.phone='114'
WHERE bo.boyName='張無忌';
刪除
方式1:delete語句
單表的刪除: ★
delete from 表名 【where 篩選條件】
多表的刪除:
【sql92】
delete 別名1,別名2
from 表1 別名1,表2 別名2
where 連接條件
and 篩選條件;
【sql99】
delete 表的別名
from 表1 別名
inner|left|right join 表2 別名 on 連接條件
where 篩選條件;
Eg.
#方式一:
#1.單表的刪除
#案例一:刪除手機(jī)號(hào)以9結(jié)尾的信息
DELETE FROM beauty WHERE phone LIKE '%9';
SELECT * FROM beauty;
#2.多表的刪除
#案例二:
DELETE b
FROM beauty b
INNER JOIN boys bo ON b.boyfriend_id = bo.id
WHERE bo.boyName = '張無忌';
#案例三:
DELETE b,bo
FROM beauty b
INNER JOIN boys bo ON b.boyfriend_id = bo.id
WHERE bo.boyName = '黃曉明';
方式2:truncate語句(用于清空所有信息)
truncate table 表名
Eg.
#方式二:truncate語句
#案例:將魅力值>100的信息刪除
TRUNCATE TABLE boys
兩種方式的區(qū)別:
1. truncate不能加where條件,而delete可以加where條件
2. truncate的效率高一丟丟
3. truncate 刪除帶自增長的列的表后,如果再插入數(shù)據(jù),數(shù)據(jù)從1開始
delete 刪除帶自增長列的表后,如果再插入數(shù)據(jù),數(shù)據(jù)從上一次的斷點(diǎn)處開始
4. truncate刪除不能回滾,delete刪除可以回滾