這一教程是對網絡數據庫設計的一個入門介紹
簡要地介紹了SQL語言的基礎以及如何使用MS ACCESS和MS SQL SEVER建立網絡數據庫
通過本教程的學習
你可以建立
訪問和操作你的數據庫
可以學會如何使用SQL語句檢索
增加
更新
刪除數據庫表中的內容
這對於任何有關數據庫的操作和開發都具有重要意義
SQL語言簡介
SQL語言及其優點
SQL語言的分類及語法
中小型關系型數據庫簡介
關系型數據庫簡介
Access數據庫及其基本操作
SQL Server數據庫及其基本操作
ODBC與ADO對象
ASP訪問數據庫的幾種方式
創建和配置ODBC數據源
用ADO實現訪問數據庫
SQL語言簡介
SQL是英文(Structured Query Language)的縮寫
意思為結構化查詢語言
SQL語言的主要功能就是同各種數據庫建立聯系
進行溝通
按照ANSI(美國國家標准協會)的規定
SQL被作為關系型數據庫管理系統的標准語言
SQL語句可以用來執行各種各樣的操作
例如更新數據庫中的數據
從數據庫中提取數據等
目前
絕大多數流行的關系型數據庫管理系統
如Oracle
Sybase
Microsoft SQL Server
Access等都采用了SQL語言標准
SQL語言及其優點
SQL語言及其優點
首先
讓我們來了解一下使用SQL語言的優點
● 非過程化語言
● 統一的語言
● 是所有關系數據庫的公共語言
非過程化語言
SQL是一個非過程化的語言
因為它一次處理一個記錄
對數據提供自動導航
SQL允許用戶在高層的數據結構上工作
而不對單個記錄進行操作
可操作記錄集
所有SQL 語句接受集合作為輸入
返回集合作為輸出
SQL的集合特性允許一條SQL語句的結果作為另一條SQL語句的輸入
SQL不要求用戶指定對數據的存放方法
這種特性使用戶更易集中精力於要得到的結果
所有SQL語句使用查詢優化器
它是RDBMS的一部分
由它決定對指定數據存取的最快速度的手段
查詢優化器知道存在什麼索引
在哪兒使用索引合適
而用戶則從不需要知道表是否有索引
有什麼類型的索引
統一的語言
SQL可用於所有用戶的DB活動模型
包括系統管理員
數據庫管理員
應用程序員
決策支持系統人員及許多其它類型的終端用戶
基本的SQL 命令只需很少時間就能學會
最高級的命令在幾天內便可掌握
SQL為許多任務提供了命令
其中包括
● 查詢數據
● 在表中插入
修改和刪除記錄
● 建立
修改和刪除數據對象
● 控制對數據和數據對象的存取
● 保證數據庫一致性和完整性
以前的數據庫管理系統為上述各類操作提供單獨的語言
而SQL 將全部任務統一在一種語言中
是所有關系數據庫的公共語言
由於所有主要的關系數據庫管理系統都支持SQL語言
用戶可將使用SQL的技能從一個RDBMS(關系數據庫管理系統)轉到另一個
所有用SQL編寫的程序都是可以移植的
SQL語言的分類及語法
SQL語言的分類及語法
可執行的SQL語句的種類數目之多是驚人的
使用SQL
你可以執行任何功能
從一個簡單的表查詢
到創建表和存儲過程
到設定用戶權限
在這個章節中
我們將重點講述如何從數據庫中檢索
更新和報告數據
也是基於這個目的
我們應該了解的最重要的SQL語句是
● SELCET
● INSERT
● UPDATE
● DELETE
● CREAT
● DROP
以上這些命令可簡要描述如表
所示
這些命令看起來並不困難
在下面的例子中
我們將在實例中應用這些命令
了解其功能
表
重要的SQL語句
SELECT語句語法
表
SELECT語句的組件
下面我們對這個重要的語句語法進行示例講解
需要說明的是這一章節中所涉及到的例子都是基於圖
描述的表結構
圖
在test數據庫中的authors表的結構
● 一個簡單的SELECT語句
SELECT id
name
phone
zip
From authors
這個簡單的查詢的結果得出的內容為authors表中返回的選定列的數據
在同樣的檢索情況下
如果你想縮小范圍
比如只想知道住在福州鼓樓地區(郵編為
)的作者的名字
你可以接著看後面的例子
● 添加WHERE子句
SELECT id
name
phone
zip
From authors
WHERE zip =
在檢索表行時
WHERE子句可以使用多個列作為約束內容
當然在檢索約束內容中還可以加入通過AND
OR以實現多個約束
另外
在SELECT語句中我們還可以通過更改比較操作符來改變約束的條件
以達到我們需要的檢索目的
我們再看一個例子
● 完整約束查詢
SELECT id
name
phone
zip
From authors
WHERE zip <>
AND phone =
這個例子查詢結果返回的是住在福州鼓樓地區以外(郵編號不為
)的且電話號碼為
的作者的資料
表
SELECT語句中支持的比較操作符
● 添加ORDER BY子句
SELECT id
name
phone
zip
From authors
WHERE zip =
ORDER BY id
這樣
這條SQL語句返回的結果將id列的升序排序
INSERT語句語法
表
INSERT語句的組件
● 一個簡單的INSERT語句
INSERT INTO authors
VALUES
(
FZ
張三
深圳幸運計算機公司
本文作者
)
這樣
便向表中加入了一條記錄
我們也可以指明用哪幾列來填充
看下面的例子
● 一個簡單的INSERT語句
INSERT INTO authors(id
name
phone)
VALUES (
FZ
李四
)
通過上面兩個例子的方法
我們就可以往數據庫中添加內容了
需要注意的是
我們插入值(包含在VALUES部分中的)要按照INSERT INTO 部分中指明的列的順序
或是在未指明的條件下按照數據庫原始各列的順序
UPDATE語句語法
表
UPDATE語句的組件
● 將列設定為確定值
UPDATE authors
SET zip =
WHERE id =
FZ
通過這個語句我們可以把數據庫中id為 FZ
的條記錄的zip列的值改為
這時如果我們無法給出確定的值
比如我們要給 id 為 FZ
的那位作者加薪
元
則可以這樣改寫SQL語句語句
● 基於已有的值來設置新的列值
UPDATE authors
SET salary = salary +
WHERE id =
FZ
這樣
即使不知道authors表中的salary列值
也可以用一條簡單的UPDATE語句成功地把薪水增加
DELETE語句語法
表
DELETE語句的組件
● 刪除一個表中的所有值
DELETE FROM authors
這條語句的執行結果是刪除authors表中的所有行
● 刪除一個表中的指定的行
DELETE FROM authors
WHERE id =
FZ
這條語句的執行結果是刪表authors中id為 FZ
的行
在前面的一部分內容中我們講述了最常用的SQL語句的基本方法
但這只是SQL語句的一部分
其它的SQL語句由於不常用就不一一講述了
各位讀者如果有興趣可以參考一些專門的SQL語法資料
這將能使你更好地操縱數據庫
更好地通過數據庫來幫助你完成你的工作
From:http://tw.wingwit.com/Article/Network/201311/30073.html