2013年11月12日 星期二

T-SQL Basic Lesson 1 - 基本結構

這篇文章,除了是基本的T-SQL的介紹外,也算是自己的複習,因為以前習慣慣用MySQL,現在改用T-SQL的語法,當然會有些許的不同。所以分享這樣的基本技巧外,日後還會增加自己學習到的技巧,並分享和大家交流。

以下是部分的語法慣例,也可以參考微軟的線上叢書:

  • 大寫 : 關鍵字。
  • 斜體 : 使用者可輸入之參數。
  • 粗體 : 必須完全依照顯示來輸入的資料庫名稱、資料表名稱...等。
  • | (分隔號) : 符號左右擇一選擇。
  • [ ] (方括號) : 選擇性的語法,該語法可寫可不寫。
  • { } (大括號) : 必要的語法。
  • [,...n] : 代表先前項目可重複 n次,以逗號分隔。
  • [...n] : 代表先前項目可重複 n次,以空白分隔。
  • ; (分號) : T-SQL陳述式結束字元。
  • <lable> :: = : 語法區塊的名稱。用來分組和標示長語法的區段,或陳述式內的多個位置所能使用的語法單位。 每個能夠使用語法區塊的位置,都用含括在箭號內的標籤來指示:<label>。


Data Manipulation Language (DML)


  • 選擇 SELECT
SELECT column_list FROM table_name

範例:
select column1,column2
from  [mydb].[dbo].[table_name]

select * from  [mydb].[dbo].[table_name]


  • 新增 INSERT

INSERT [INTO] table_name[(column_list)]
{VALUES ( {DEFAULT|NULL|expression}[,...n] ) | execute_statement}
  1. table_name : 欲新增資料的資料表名稱
  2. DEFAULT : 該欄位使用預設值
  3. NULL : 該欄位使用NULL值
  4. expression : 指定該欄位的值,常數、運算式或是變數
  5. execute_statement : 另一段可執行的SQL敘述

範例:
insert [mydb].[dbo].[table_name] (colnmn1 , colnmn2)
values(values1 , values2)

colnmn可不依資料表內的順序,對應好values即可


  • 修改 UPDATE

UPDATE table_name SET colnmn = { expression|DEFAULT|NULL} [,...n]
[FROM <table_source>] [WHERE <search_condition>]

範例:
update [mydb].[dbo].[table_name] set colnmn1 = values1,colnmn2 = values2,...,colnmnN = valuesN
where condition

where若不寫,就是看整個資料表

  • 刪除 DELETE
DELETE [from] table_name [ FROM <table_source> [,...n] ]
[WHERE <search_condition>]
    範例:
    delete from [mydb].[dbo].[table_name]
    where column = values

    where若不寫,就會刪除整個資料表,下次輸入新資料時,識別欄位會由上次最後一筆+1開始。若要重新計算,可以使用 TRUNCATE TABLE

    TRUNCATE TABLE [ {database_name.[schema_name]. | schema_name.} ] table_name [;]

    範例:
    truncate table [mydb].[dbo].[table_name]

    非常基礎的觀念,不過對於習慣用MySQL而言,有些細微的不同之處,可能要稍微注意。

    -雲遊山水為知已逍遙一生而忘齡- 電腦神手

    沒有留言:

    張貼留言