DDL數據定義語言
1.對數據庫
CREATE DATABASE database_name --增
CREATE DATABASE table_user --創建一個名叫table_user的數據庫
DROP DATABASE 數據庫名稱 --刪
DROP DATABASE table_user --刪掉table_user這個數據庫
ALTER DATABASE --改
用於更改數據庫的全局特性。在數據庫中添加或刪除文件和文件組;也可用於更改文件和文件組的屬性,例如更改文件的名稱和大小。這些特性儲存在數據庫目錄中的db.opt文件中。要使用ALTER DATABASE,您需要獲得數據庫ALTER權限。2.對錶
SQL CREATE TABLE
CREATE TABLE 表名稱
(
列名稱1 數據類型,
列名稱2 數據類型,
列名稱3 數據類型,
....
)
其中,常用的數據庫的數據類型如下:數據類型 | 描述 |
---|---|
|
整數,首位表示正負,31位。4byte。 小整數,首位表示正負,15位。2byte。 超小數,從 0 - 255 。 可選:“size”規定數字的最大位數。 |
|
小數。 "size" 規定數字的最大位數,包括小數位。"d" 規定小數點右側的最大位數。 |
char(size) |
容納固定長度的字符串(可容納字母、數字以及特殊字符)。 “size”在括號中規定字符串的長度。 |
varchar(size) |
容納可變長度的字符串(可容納字母、數字以及特殊的字符)。 “size”在括號中規定字符串的最大長度。 |
date(yyyymmdd) | 容納日期。 |
CREATE TABLE Persons
(
Id_P int,
LastName varchar(255),
FirstName varchar(255),
Address varchar(255),
City varchar(255)
) --例子01
SQL TABLE DELETE
刪除表(表的結構、屬性以及索引也會被刪除)。
DROP TABLE 表名稱 --刪除表
TRUNCATE TABLE 表名 --只刪除表內的數據,保留結構
注:drop和truncate都沒有回滾!!!慎用。SQL ALTER TABLE
alter主要是對列進行操作。包括添加、修改、刪除列。
ALTER TABLE table_name ADD column_name datatype
ALTER TABLE Persons ADD Birthday date --例子02:添加新的列
ALTER TABLE table_name ALTER COLUMN column_name datatype
ALTER TABLE Persons ALTER COLUMN Birthday year --例子03:修改列的數據類型
ALTER TABLE table_name DROP COLUMN column_name
ALTER TABLE Person DROP COLUMN Birthday --例子04:刪除列
3.對索引
index是爲了在不讀取整個表的情況下,使數據庫應用程序可以更快地查找數據。用戶無法看到索引,它們只能被用來加速搜索/查詢。注:更新一個包含索引的表需要比更新一個沒有索引的表更多的時間,這是由於索引本身也需要更新。因此,理想的做法是僅僅在常常被搜索的列(以及表)上面創建索引。
SQL CREATE INDEX 語句
CREATE UNIQUE INDEX index_name ON table_name (column_name) --UNIQUE是可選項,寫上UNIQUE後就是在表上創建唯一的索引,每行之間都不能擁有相同的索引值。
CREATE INDEX PersonIndex ON Person (LastName DESC,FirstName) --DESC代表降序,使用時是在列後面加。其次,多個列之間用都好隔開。
SQL DROP INDEX 語句
刪除表格中的索引,各個數據庫之間各有不同。常用的如下:DROP INDEX table_name.index_name --Microsoft SQL Server版
ALTER TABLE table_name DROP INDEX index_name --MySQL版
DROP INDEX index_name --Oracle版
DDL語句的總結到此爲止。至此,基本的SQL語句就完了。下一篇將進行一些高級的SQL語句總結。