MySQL學習筆記一( SQL基礎)

2021-09-27 08:24:38 字數 3548 閱讀 6056

sql語句是structure query language(結構化查詢語句)的縮寫,它是使用關係模型的資料庫應用語句。

sql語句可以包括三個類別:ddl資料定義語句、dml資料操作語句、dcl資料控制語句。

1.ddl(data definition language):定義資料庫物件,如欄位,表,列,索引等,常用的語句的關鍵字主要有:create(增)、drop(刪)、alter(改)。(用於資料庫管理)

2. dml(data manipulation language):主要用於新增、刪除、更新、和查詢資料庫中的資料。常用的語句的關鍵字包括insert(插入)、delete(刪除)、update(更新)、select(查詢)。(用於對資料庫中表的內部資料進行操作,注意和ddl的區別)

3. dcl(data control language):用於控制不同資料段直接的許可和訪問級別的語句。[^1] 它可以操作指定使用者對資料庫物件的控制權。由 grant (授權)和 revoke(**授權) 兩個指令組成。

1:《深入淺出mysql》
資料庫建立(create database databasename;)

a.建立資料庫的一般步驟是:

啟動服務(net start mysql)—>連線到資料庫(mysql -u密碼 -p密碼),開始出現mysql> -->查詢資料庫(show databases;)–>建立資料庫(create database databasename;)–>選擇資料庫(use databasename;)–>檢視資料庫中所有表(show tables;)

b.在安裝資料庫時系統會預設建立4個資料庫:

information_schema:儲存系統中一些資料庫物件的資訊。

cluster:儲存系統的集群資訊。

mysql:儲存使用者許可權資訊。

test:測試資料庫,任何使用者都可使用。

資料庫刪除(drop database databasename;)

刪除資料庫時,資料庫中的所有**及其資料都會被刪除!

**建立

a.想對資料進行操作僅僅有資料庫還不行,還要在資料庫中建立一張張**。然後才可以對資料進行insert、delete、update、select等操作。建立**的語法格式為:

create table tablename(

column_name_1(變數名1) column_type(變數型別) constraints(變數約束),

column_name_2(變數名2) column_type(變數型別) constraints(變數約束),

column_name_3(變數名3) column_type(變數型別) constraints(變數約束),…);

b.檢視**的命令: desc tablename;  或者   show create table tablename;(該命令能得到更為全面的表定義資訊)。

**刪除(drop table tablename;)

**的修改

初期**設計不完善或後期需要加入新的字段時,往往需要對**進行修改以滿足新的需求。表的修改一般有以下幾種型別:

a.修改型別:alter table tablename modify column_name column_definition;

如:alter table test1 modify studentname varchar(20);   將test1表中的studentname欄位定義為varchar型別,字元量長度最大為20。

b.增加字段:alter table tablename add column column_name column_definition; 如:alter table test1 add column studentid varchar(10);   為test1表中新增studentid欄位,型別為varchar型別,字元量長度最大為10。

c.刪除字段:alter table tablename drop column column_name; 如:alter table test1 drop column score;   將test1表中score欄位及其對應資料刪除。

d.字段改名:alter table tablename change column_old_name column_new_name column_defination; 如:alter table test1 change age age2 int(2);   將test1表中age欄位改為age2並修改資料型別為int型,字元長度4。change和modify都可以修改資料型別,不同的是前者可以修改欄位名稱,而後者只能修改字段型別

e.修改字段排列順序:alter table tablename change/modify column_name1 after column_name2; 將column_name1放在column_name2之後。alter table tablename change/modify column_name1 first; 將column_name1放在最前面。

f.**重新命名:alter table tablename rename new_table_name;

1.insert

往**中插入資料的基本語法格式為:

insert into tablename(欄位1,欄位2,…欄位n) values (values1,values2,…valuesn);

注意:可以不用指定插入的字段,但是要保證values後面的值和未插入的欄位名稱一一對應。當然insert可以一次性插入多條資料:

…values

(valuesa1,valuesa2,...valuesan),

(valuesb1,valuesb2,...valuesbn),

(valuesc1,valuesc2,...valuescn);

update

可以通過update命令對錶中的值進行更新,其語法格式如下:

update tablename set 欄位名1 = value1,欄位名2 = value2,…欄位名n = valuen where 約束條件; (更新單一**資料)

update t1,t2,…tn set t1.欄位名1 = value1,t2.欄位名2 = value2,…tn.欄位名n = valuen where 約束條件; (更新多個**資料)

delete

可以通過delete命令對錶中的值進行刪除,其語法格式如下:

delete from tablename where 約束條件; 將符合約束條件的記錄刪除。

select

可以通過select命令進行各種各樣的查詢,使得輸出結果滿足使用者的需求,其語法格式如下:

select… from tablename( where + 約束條件);

distinct 關鍵字可以去掉表中重覆記錄,用法為select distinct …

MYSQL學習筆記 SQL語句基礎

增 insert into grade values 3,english 80 insert into class select stuid,class from grade 值需匹配 刪 delete from grade where id 3 改 update grade set grade 6...

mysql學習筆記之sql基礎語法

結構化查詢語言 structured query language 由國際標準化組織 iso 制定的,對dbms的統一操作方式 例如相同的語句可以操作 mysql oracle等 ps 例如sql99,即1999年制定的標準。某種dbms不只會支援sql標準,而且還會有一些自己獨有的語法,這就稱之為...

MySQL學習筆記(一) MySQL基礎架構

mysql可分為server層和儲存引擎層兩部分 1.1 server層 聯結器 許可權驗證 盡量使用長連線,但是長連線會消耗記憶體,可以定時清理,也可以重新初始化鏈結資源 查快取 一般不用,除非讀多寫少 8.0移除 分析器 詞法分析,語法分析,語法解析 優化器 使用哪個索引 表連線順序 執行器 執...