在這邊紀錄,自己的學習歷程,若有說明錯誤的地方還請各位大大指教,這篇會講述Create、Drop 表格,和陳述式。
Create Tables
Create Table 這個關鍵字是告訴DB System 你想要做甚麼事。你需要給Table唯一的Name 在這個Table 且去 follows Create Table statement。
Syntax
下面是基礎語法
Example
CREATE TABLE CUSTOMERS( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25) , SALARY DECIMAL (18, 2), PRIMARY KEY (ID));
自己的案例:
CREATE TABLE CUSTOMERS(
ID INT ,
NAME nvarchar(Max),
AGE nvarchar(3),
ADDRESS nvarchar(Max),
SALARY money
);
簡單說明一下,我創建了名為Customers的 Table, Column 有 ID(INT), NAME(nvarchar(Max)), AGE (nvarchar(3)), ADDRESS(nvarcahr(Max)). Salary(money)。
EX:ID(INT)
小括號內部是宣告他的型態 nvarchar(3) 或 nvarchar(Max)裡的3和Max代表他的字元長度限制。
你可以在SQL Server訊息中知道成功創建Table的訊息。
或是用以下指令去查看。
exec sp_columns CUSTOMERS
Drop Tables
Drop Table這個語法,是移除掉Table的定義,和 所有Data, indexes, triggers, constraints, and pernission specifications for Table。
Note: 當你使用此指令時,要小心,表中所有的信息將永遠丟失。
Syntax
下面是基礎語法
DROP TABLE CUSTOMERS;
Example
我們可以先驗證Table在Drop掉看效果。
Exec sp_columns CUSTOMERS;
之後在進行Drop
DROP TABLE CUSTOMERS; Command(s) completed successfull
接著再進行驗證
Exec sp_columns CUSTOMERS; No rows\data will be displayed
INSERT Statement
INSERT INTO Statement 在DB的Table裡是被使用來Add New Row。
以下是兩個基礎與法
Syntax
根據指定Column去做INSERT
INSERT INTO TABLE_NAME [(column1, column2, column3,...columnN)] VALUES (value1, value2, value3,...valueN);
or
如果要增加全部的Columns就不需要指定Column。但要確保the order of values 和 table裡的Column是一樣的。
INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
Example
第一個語法指定欄位的Syntax
INSERT INTO CUSTOMERS VALUES(1, 'Ramesh', '32', 'Ahmedabad', 2000.00 ); INSERT INTO CUSTOMERS VALUES(2, 'Khilan', '25', 'Delhi', 1500.00 ); INSERT INTO CUSTOMERS VALUES(3, 'kaushik', '23', 'Kota', 2000.00 ); INSERT INTO CUSTOMERS VALUES(4, 'Chaitali', '25', 'Mumbai', 6500.00 ); INSERT INTO CUSTOMERS VALUES(5, 'Hardik', '27', 'Bhopal', 8500.00 ); INSERT INTO CUSTOMERS VALUES(6, 'Komal', '22', 'MP', 4500.00 ); INSERT INTO CUSTOMERS VALUES(7, 'Muffy', '24', 'Indore', 10000.00 );
第二個語法不指定欄位增加整個Row的Syntax
INSERT INTO CUSTOMERS VALUES (7, 'Muffy', 24, 'Indore', 10000.00 );
Populate One Table Using Another Table
你可以Populate Data 透過Select Statement 到把Table上的資料INSERT 到另一個Table上。
以下是Syntax
INSERT INTO first_table_name SELECT column1, column2, ...columnN FROM second_table_name [WHERE condition];
SELECT Statement
SELECT Statement被使用來從Database Table中取得儲存在Table的Data 結果。
這個Result Tables 被稱為result-sets
Syntax
以下是SELECT Statement的基礎與法
SELECT column1, column2, columnN FROM table_name;
Example
以下取得在Customers Column裡的ID, Name, Salary 資料
SELECT ID, NAME, SALARY FROM CUSTOMERS;
如果你想取得Customers裡的所以欄位,可以使用下面查詢
SELECT * FROM CUSTOMERS;
UPDATE Statement
Update Statement是被用來修改在Table裡Existing Records的資料。
你可以使用Wherer clause 去指定修改Selected Row。
Syntax
以下是基礎語法
UPDATE table_name SET column1 = value1, column2 = value2...., columnN = valueN WHERE [condition];
你可以透過使用AND or OR Operators 去組合符合N的條件。
Example
以下將Customers表格ID=6資料,去修改他的ADDRESS='Pune' 。
UPDATE CUSTOMERS SET ADDRESS = 'Pune' WHERE ID = 6;
如果想更新多個Column,可以使用以下語法:
UPDATE CUSTOMERS SET ADDRESS = 'Pune', SALARY = 1000.00;
DELETE Statement
DELETE Statement被用來刪除在Table中已儲存的Record
你可以使用Where條件句去Selected Row,否則會刪除所有Record。
Syntax
DELETE FROM table_name WHERE [condition];
Example
DELETE FROM CUSTOMERS WHERE ID = 6;
若要刪除此Tabel全部的紀錄,你不需要使用Where條件句。
刪除如下:
DELETE FROM CUSTOMERS;