首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

SQL 語法快速參考手冊(ANSI/ISO 標準,兼容 DB2/Oracle/SQL Server)

     編輯:關於SqlServer

資料定義語言 (DDL)

建立資料表

CREATE TABLE table_name (
    column1 DATATYPE [NOT NULL] [PRIMARY KEY],
    column2 DATATYPE [NOT NULL],
    ...
);
  • DATATYPE:資料型別(見下表)
  • NOT NULL:禁止空值
  • PRIMARY KEY:主鍵

修改資料表

-- 新增欄位
ALTER TABLE table_name ADD COLUMN column_name DATATYPE;

-- 設定/移除主鍵
ALTER TABLE table_name ADD PRIMARY KEY (column_name);
ALTER TABLE table_name DROP PRIMARY KEY (column_name);

注意:標準 SQL 無 DROP COLUMN,各廠商擴充不同(SQL Server 用 ALTER TABLE ... DROP COLUMN)。

建立索引

CREATE INDEX index_name ON table_name (column_name);

刪除物件

DROP TABLE table_name;
DROP INDEX index_name;

常用資料型別 (DATATYPE)

型別說明
SMALLINT16-bit 整數
INTEGER32-bit 整數
DECIMAL(p,s)p 總位數,s 小數位;預設 p=5, s=0
FLOAT32-bit 浮點數
DOUBLE64-bit 浮點數
CHAR(n)固定長度字串,n ≤ 254
VARCHAR(n)變動長度字串,n ≤ 4000
GRAPHIC(n)雙位元組字串(中文等),n ≤ 127
VARGGRAPHIC(n)變長雙位元組字串,n ≤ 2000
DATE年月日
TIME時分秒
TIMESTAMP年月日時分秒毫秒

資料操作語言 (DML)

新增資料

-- 直接指定值
INSERT INTO table_name (col1, col2, ...) VALUES (val1, val2, ...);

-- 從子查詢複製
INSERT INTO table_name (col1, col2, ...)
SELECT colx, coly, ... FROM another_table;

查詢資料

SELECT [DISTINCT] column_list
FROM table_name
[WHERE condition]
[GROUP BY column_list [HAVING condition]]
[ORDER BY column_list [ASC|DESC]];

修改資料

UPDATE table_name
SET col1 = val1, col2 = val2, ...
[WHERE condition];

刪除資料

DELETE FROM table_name [WHERE condition];

標準化歷程

  • SQL 起源於 IBM System R 專案(SEQUEL)
  • ANSI 1986 / ISO 1987 首版標準
  • 後續擴充:SQL-92, SQL:1999, SQL:2003, SQL:2011, SQL:2016...
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved