默認(rèn)mysql字符串編碼
字符集:utfmb4
排序規(guī)則:utf8mb4_general_ci → 該設(shè)置字段不區(qū)分大小寫(xiě)
排序規(guī)則: utf8mb4_bin → 可識(shí)別字段內(nèi)容的大小寫(xiě)
-- 建表語(yǔ)句
CREATE TABLE product_name (
id bigint NOT NULL AUTO_INCREMENT
,product_name varchar(200) DEFAULT NULL
,create_time timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間'
,update_time timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新時(shí)間'
,PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
字段識(shí)別大小寫(xiě)設(shè)置
- 建表時(shí)設(shè)置針對(duì)字段設(shè)置
product_name varchar(200) binary - 對(duì)整個(gè)表設(shè)置
COLLATE=utf8mb4_bin - 查詢(xún)語(yǔ)句臨時(shí)調(diào)用
select * from product_name where binary name like '%A%'
基礎(chǔ)語(yǔ)法
1.表結(jié)構(gòu)語(yǔ)法
-- 表信息語(yǔ)法
show databases; -- 顯示數(shù)據(jù)庫(kù)
use demo; -- 進(jìn)入demo庫(kù)
desc demo.product_name; -- 查看表結(jié)果
show create table demo.product_name; -- 查看建表語(yǔ)句
explain select * from demo.product_name -- 查看運(yùn)行順序與資源
2.表內(nèi)容操作語(yǔ)法
-- 查詢(xún)
select * from product_name_copy where name like '%a%';
-- 數(shù)據(jù)庫(kù)為設(shè)置區(qū)分大小寫(xiě)時(shí)使用
select * from product_name_copy where binary name like '%a%';
-- 修改字段值
update product_name set name="b大爺" where name like '%A%';
-- 刪除
delete from product_name where name = "b大爺";
-- 增添
insert into product_name(name) values("c大爺"),("d大爺"),("e大爺");
insert into product_name set name = "n大爺";
insert into product_name(name) select name from product_name limit 1;
-- 覆蓋(根據(jù)主鍵選擇更新還是覆蓋原來(lái)的行操作)
replace into product_name(id,name) select id , 'a復(fù)制大爺' as name from product_name limit 1;
replace into product_name(name) select name from product_name limit 1;
-- 添加列
ALTER TABLE product_name ADD create_time_bak TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間';
-- 修改列名(注釋也可)
ALTER TABLE product_name CHANGE create_time_bak create_time_1 TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '創(chuàng)建時(shí)間' ;
alter table product_name change name new_name varchar(20) ;
alter table product_name change new_name name varchar(25) COMMENT '產(chǎn)品名';
-- 刪除列(慎用)
ALTER TABLE product_name DROP COLUMN create_time_1
-- 復(fù)制表(帶數(shù)據(jù))
create table product_name_copy_1 as select * from product_name;
-- 復(fù)制表(不帶數(shù)據(jù))
create table product_name_copy_2 like product_name;