【MySQL】002-SQL語(yǔ)句
SQL通用語(yǔ)法:
1、SQL語(yǔ)句可以單行或多行書(shū)寫(xiě),分號(hào)結(jié)尾。
2、SQL語(yǔ)句可以使用空格和縮進(jìn)。
3、SQL語(yǔ)言不區(qū)分大小寫(xiě)
4、注釋:?jiǎn)涡凶⑨尶梢允褂?-或#來(lái)注釋內(nèi)容,多行注釋則是/*注釋內(nèi)容*/。
SQL語(yǔ)句分類:
DDL,全稱(Data Definition Language),是數(shù)據(jù)定義語(yǔ)言,用來(lái)定義數(shù)據(jù)庫(kù)對(duì)象(數(shù)據(jù)庫(kù)、表、字段)
DML,全稱(Data Manipulation Language),是數(shù)據(jù)操作語(yǔ)言,用于增刪改查。
DQL,全稱(Data Query Language),是數(shù)據(jù)查詢語(yǔ)言,用于查詢數(shù)據(jù)庫(kù)中表的記錄。
DCL,全稱(Data Control Language),是數(shù)據(jù)控制語(yǔ)言,用于創(chuàng)建數(shù)據(jù)庫(kù)用戶,控制數(shù)據(jù)庫(kù)訪問(wèn)權(quán)限。

(Data Definition Language)DDL:
數(shù)據(jù)庫(kù)操作:
查詢:
show databases;查詢所有數(shù)據(jù)庫(kù)
select?database();查詢當(dāng)前數(shù)據(jù)庫(kù)
創(chuàng)建:
create database [if not exists] 數(shù)據(jù)庫(kù)名 [default charset 字符集] [collate 排序規(guī)則]
刪除:
drop database [if exists] 數(shù)據(jù)庫(kù)名;
使用:
use 數(shù)據(jù)庫(kù)名;
表操作:
查詢當(dāng)前數(shù)據(jù)庫(kù)所有表:
show tables;
創(chuàng)建表:
create table 表名(
????字段1 字段1類型 [comment 字段1注釋],
? ??字段2?字段2類型 [comment 字段2注釋],
????字段3?字段3類型?[comment 字段3注釋]
)[comment?表注釋];
查詢表結(jié)構(gòu):
desc 表名;(不顯示注釋)
查詢指定表的建表語(yǔ)句:
show create table 表名;(顯示注釋)
數(shù)據(jù)類型:

signed:有符號(hào)
unsigned:無(wú)符號(hào)
tinyint:有符號(hào)(-128,127)無(wú)符號(hào)(0,255)
smallint:有符號(hào)(-32768,32767)無(wú)符號(hào)(0,65535)
float:使用時(shí)要聲明精度和標(biāo)度,即整數(shù)長(zhǎng)度和小數(shù)長(zhǎng)度
使用方法:
類型名稱 類型 有無(wú)符號(hào)
舉例:?
age tinyint unsignel
exp float(3,1) signel

重點(diǎn):char和varchar。
定長(zhǎng)字符串在聲明時(shí)要傳入長(zhǎng)度,空白的填入空格
變長(zhǎng)字符串會(huì)根據(jù)內(nèi)容修改長(zhǎng)度。
定長(zhǎng)性能好,變長(zhǎng)性能較差。較短的和長(zhǎng)度變化小的建議定長(zhǎng)。

修改表:
添加字段:
alter table 表名 add 字段名 類型(長(zhǎng)度) [comment 注釋] [約束];
修改字段類型:
alter table 表名 modify 字段名 新數(shù)據(jù)類型(長(zhǎng)度);
修改字段名和字段類型:
alter table 表名 change 舊字段名 新字段名 類型(長(zhǎng)度) [comment?注釋] [約束];
修改表名:
alter table 表名 rename to 新表名;
刪除字段:
alter table 表名 drop 字段名;
刪除表:
drop table [if exists]?表名;
刪除表然后重新創(chuàng)建該表:
truncate table 表名;
