(My)SQL DDL語句

SQL語句主要可以分爲以下3個類別:
1:DDL語句:數據定義語言。常用關鍵字主要包括create、drop、alter等。
2:DML語句:數據操縱語言,用於添加、刪除、更新、查找。其只對表內部數據進行操作,而不涉及表的定義和結構的修改。常用關鍵字主要包括insert、delete、uptdate和select。
3:DCL語句:數據控制語句,用於控制不同數據段直接的許可和訪問級別的語句。主要關鍵字包括grant、revoke。

在這裏插入圖片描述

以上是啓動mysql服務的界面。
在以上命令行中mysql代表客戶端命令,"-u"後面跟的是連接的數據庫用戶,"-p"表示需要輸入密碼。
如果數據庫設置正常,並輸入了正確的密碼。將會看到上面一段歡迎界面和一個"mysql>“提示符。
在歡迎界面說明了以下幾部分內容:
命令的結束符用’’;“或”\g"結束。
客戶端的連接id,記錄了目前此數據庫被連接的次數。
mysql服務器的版本,本例中是8.0.18.
通過"help;“或”\h"命令來顯示幫助內容,通過”\c"來清楚命令行buffer。
在mysql>提示符後面輸入所要執行的SQL語句,每個SQL語句以";“或者”\g"結束,按回車鍵執行。

2.2.1DDL語句:
1:創建數據庫:

mysql> create database test1;

2:查看系統中存在的數據庫:

mysql> show databases;

在這裏插入圖片描述
information_schema:主要存儲了系統中的一些數據庫對象信息。
mysql:存儲了系統用戶權限的信息。

3:選擇要操作的數據庫:

mysql> use test1

4:選擇操作的數據庫後,查看test1中創建的所有數據表:

mysql> show tables;

5:刪除數據庫:

mysql> drop database test1;

數據庫刪除之後,下面的所有表數據都會被全部刪除,所以刪除前一定要仔細檢查做好備份。

6:創建表:
mysql的表名是以目錄的形式存在於磁盤上的。
在數據庫中創建一張表的基本語法如下:
CREATE TABLE table(column_name_1 column_type_1 constraints,…)
column_name:列的名字。
column_type:列的數據類型。
constraints:列的約束條件。

例如,創建一個名稱爲emp的表。表中包括ename(姓名)、hiredata(僱傭日期)和sal(薪水)3個字段,字段類型分別爲varchar(10)、data、int(2)。

mysql> create table emp(ename varchar(10),hiredata data,sal decimal(10,2),deptno int(2));

7:查看錶:

mysql> desc smp;

在這裏插入圖片描述

爲了得到更加全面的表信息,有時需要查看創建表的SQL語句:

mysql> show create table func \G;

在這裏插入圖片描述

可以看到,通過以上語句,除了可以看到表的定義以外,還一看到表的engine(存儲引擎)和charset(字符集)等信息。"\G"選項的含義是使得記錄能夠按照字段豎向排列,以便更好地顯示內容較長的記錄。

8:刪除表:

mysql> drop table emp;

9:修改表:
對於已經創建好的表,油漆是已經有大量數據的表,如果需要做一些結構上的修改,可以先將表刪除,然後按照新的定義重建表。但是這又一定的缺陷,如果有服務在訪問表,也會對服務產生影響。
因此,在大多數情況下,表結構的更改都使用alter table語句,以下是一些常用命令:

1)修改表類型,語法如下:
例如修改表emp的ename字段定義,將varchar(10)改爲varchar(20)。

mysql> alter table emp modify ename varchar(20);

2)增加表字段,語法如下:
在表emp中心增加字段age,類型爲int(3):

mysql> alter table emp add age int(3);

3)刪除表字段:
將字段age刪掉:

mysql> alter table emp drop column age;

4)字段改名:
將age改名爲age1,同時修改字段類型爲int(4):

mysql> alter table emp change age age1 int(4);

注意:change和modify都可以修改表的定義,不同的是change後面要寫兩次列名,不方便。但是change的優點是可以修改列名稱,modify則不能。

5:修改字段排列順序:
前面介紹的字段增加和修改語法中,都有一個可選項first|after column_name,這個選項可以用來修改字段在表中的位置,ADD增加的新字段默認是加在表的最後位置,而CHNANGE/MODIFY默認不改變字段的位置。

例如將新增的字段birth data加在ename之後:

mysql> alter table emp add birth data after ename;

修改字段age,將它放在最前面:

mysql> alter table emp modify age int(3) first;

注意:CHANGE/FIRST|AFTER COLUMN 這些關鍵字都屬於MySQL在標準SQL上的擴展,在其它數據庫上不一定適用。

6:更改表名:
將emp改名爲emp1:

mysql> alter table emp rename emp1;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章