做IT這一行,知識面就要廣。感覺(jué)總有學(xué)不完的東西,痛苦的是學(xué)完了不一定工作中都能用到,隨著(zhù)時(shí)間的流逝,以前花大力氣學(xué)的東西,又忘了,每到換工作時(shí),又要充一下電,要重新學(xué)習溫習,似乎又從0開(kāi)始了。唉,什么時(shí)候是個(gè)頭呢。
今天把數據庫相關(guān)的知識再重新?lián)炱饋?lái)。過(guò)一過(guò)大腦吧。
SQL 是什么?
SQL(結構化查詢(xún)語(yǔ)言), 是一門(mén) ANSI(美國國家標準化組織) 的標準計算機語(yǔ)言,用來(lái)訪(fǎng)問(wèn)和操作數據庫系統。SQL 語(yǔ)句用于取回和更新數據庫中的數據。SQL 可與數據庫程序協(xié)同工作,比如 MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase 以及其他數據庫系統。
不幸地是,存在著(zhù)很多不同版本的 SQL 語(yǔ)言,但是為了與 ANSI 標準相兼容,它們必須以相似的方式共同地來(lái)支持一些主要的關(guān)鍵詞(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。
注釋?zhuān)?/span>除了 SQL 標準之外,大部分 SQL 數據庫程序都擁有它們自己的私有擴展!
RDBMS(關(guān)系型數據庫管理系統),是SQL的基礎
同樣也是所有現代數據庫系統的基礎,比如 MS SQL Server, IBM DB2, Oracle, MySQL 以及 Microsoft Access。
RDBMS 中的數據存儲在被稱(chēng)為表(tables)的數據庫對象中。
表是相關(guān)的數據項的集合,它由列和行組成。
在您的網(wǎng)站中使用 SQL
要創(chuàng )建發(fā)布數據庫中數據的網(wǎng)站,您需要以下要素:
- RDBMS 數據庫程序(比如 MS Access, SQL Server, MySQL)
- 服務(wù)器端腳本語(yǔ)言(比如 PHP 或 ASP)
- SQL
- HTML / CSS
SQL Server是微軟的,只能在Windows上運行;
Oracle、IBM DB2、可以在UNIX/Linux上跑,系統性能、安全性、可靠性比SQL Server強得多。
在Linux上,mysql使用也很多,這是一款可以免費使用的數據庫產(chǎn)品,功能也非常強大。
SQL 能做什么?
- SQL 可在數據庫中插入新的記錄
- SQL 可從數據庫刪除記錄
- SQL 可更新數據庫中的數據
- SQL 面向數據庫執行查詢(xún)
- SQL 可從數據庫取回數據
- SQL 可創(chuàng )建新數據庫
- SQL 可在數據庫中創(chuàng )建新表
- SQL 可在數據庫中創(chuàng )建存儲過(guò)程
- SQL 可在數據庫中創(chuàng )建視圖
- SQL 可以設置表、存儲過(guò)程和視圖的權限
SQL DML 和 DDL
可以把 SQL 分為兩個(gè)部分:數據操作語(yǔ)言 (DML) 和 數據定義語(yǔ)言 (DDL)。SQL (結構化查詢(xún)語(yǔ)言)是用于執行查詢(xún)的語(yǔ)法。但是 SQL 語(yǔ)言也包含用于更新、插入和刪除記錄的語(yǔ)法。
查詢(xún)和更新指令構成了 SQL 的 DML 部分:
- INSERT INTO - 向數據庫表中插入數據
- DELETE - 從數據庫表中刪除數據
- UPDATE - 更新數據庫表中的數據
- SELECT - 從數據庫表中獲取數據
SQL 的數據定義語(yǔ)言 (DDL) 部分使我們有能力創(chuàng )建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
SQL 中最重要的 DDL 語(yǔ)句:
- CREATE DATABASE - 創(chuàng )建新數據庫
- ALTER DATABASE - 修改數據庫
- CREATE TABLE - 創(chuàng )建新表
- ALTER TABLE - 變更(改變)數據庫表
- DROP TABLE - 刪除表
- CREATE INDEX - 創(chuàng )建索引(搜索鍵)
- DROP INDEX - 刪除索引
select 列1,列2 from 某表 where 字段1=‘某值’and 字段2=‘某值22’or 字段3>12 order by 字段3 desc, 字段4 asc
對表的數據按照一定的條件進(jìn)行篩選,排序。 select * from 某表 要看表的全部數據
select distinct 列1 from 某表 要看表中列1字段中的經(jīng)排重后的所有數據
insert into 某表 (字段1,字段2) values ('值1','值2') 在表中添加一條新數據,字段1值為值1,字段2值為值2,其他為空
update 某表 set 字段1=‘值1’,字段2=‘值2’ where 字段3=‘值3’ 更改表中字段3值為值3的字段1的值為值1,字段2的值為值2.delete * from 某表 刪除某表的全部數據
delete from 某表 where 字段1=值1 將表中字段1值為值1的數據從某表中刪除。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請
點(diǎn)擊舉報。