SQL學習之SQL語法

2021-10-01 10:14:17 字數 2129 閱讀 3749

sql語句

最重要也是最常用的的 sql 命令

菜鳥教程

mysql、oracle、sqlite、access、ms sql server等

其中又分為兩大陣營:

非關係型資料庫(key、value的形式,沒有表結構)

由來

# 資料庫管理軟體的由來:

# 資料想要永久儲存,都是儲存在檔案中的,毋庸置疑,乙個檔案只能存放在一台機器上,

# 如果我們忽略掉直接基於檔案來訪問資料帶來的效率問題,假設程式的所有元件都是執行在一台機器上,

# 則上述假設存在以下問題:

# 1. 整個程式的所有元件不可能執行在一台機器上

# 因為這台機器一旦宕機則意味著整個軟體的崩潰;

# 一台機器的效能總歸是有限的

# 對一台機器的效能垂直進行擴充套件是有極限的,

# 於是我們只能通過水平擴充套件來增強我們的系統效能,

# 也就是需要我們將整個程式的各個元件分布到多台機器上

# 2. 資料安全問題

# 雖然程式的各個元件分布到了多台機器上,但是他們仍是乙個整體,

# 所以元件之間的資料還是要共享的。

# 每台機器上只能操作這台機器上的檔案,實現不了資料共享,

# 於是我們想到了將資料與應用程式分離:

# 把檔案存放於一台機器,然後將多台機器通過網路去訪問這台機器上的檔案(用socket實現),

# 既然要共享,那麼就會帶來競爭,競爭就會帶來資料不安全,所以需要加鎖處理。

# 3. 併發

# 基於問題2,

# 我們必須寫乙個socket服務端來管理這台機器(資料庫伺服器)上的檔案,

# 後寫乙個socket客戶端,完成如下功能:

# 1.遠端連線(支援併發)

# 2.開啟檔案

# 3.讀寫(加鎖)

# 4.關閉檔案

# 如果我們在編寫任何程式之前,都需要事先寫好基於網路操作一台主機上檔案的程式(socket服務端與客戶端程式),那麼工作是非常繁瑣的

# 於是有人將此類程式寫成乙個專門的處理軟體,這就是mysql等資料庫管理軟體的由來,但mysql解決的不僅僅是資料共享的問題,還有查詢效率,安全性等一系列問題,

# 總之,把程式設計師從資料管理中解脫出來,專注於自己的程式邏輯的編寫。

就想象成乙個資料夾,是儲存組織資料表的乙個容器

含有欄位的檔案才是資料表,就想象成乙個excel**,是某種有著特定型別的結構化清單

事物的一系列典型特徵一條記錄是進行操作的最小的單位,不可再分割。從技術上說,是

表記錄對應的標題

描述事物特徵的符號

sql 語句以;分號結尾

sql命令

說明select從資料庫中提取資料

update更新資料庫中的資料

delete從資料庫中刪除資料

insert into向資料庫中插入新資料

create database建立新資料庫

alter database修改資料庫

create table建立新錶

alter table變更(改變)資料庫表

drop table刪除表

create index建立索引(搜尋鍵)

drop index刪除索引

學習總結 SQL學習總結之SQL語法

選取所有列即原表返回 select from table name 例如 select distinct country from websites 例如 從 websites 表中選取國家為 cn 的所有 例如 從 websites 表中選取id為1的所有 文字字段 vs.數值字段 where 子...

SQL語法之索引

注 mssqlserver2000 按照索引的結構,可以將其劃分為兩大類 聚簇索引 clustered index 和非聚簇索引 noclustered index 按照表中建立索引的那一列 或列組合 中的資料是否各不相同,可以將索引分為唯一索引和非唯一索引。建立索引的條件如下 1 只有表的擁有者才...

mysql學習筆記之sql基礎語法

結構化查詢語言 structured query language 由國際標準化組織 iso 制定的,對dbms的統一操作方式 例如相同的語句可以操作 mysql oracle等 ps 例如sql99,即1999年制定的標準。某種dbms不只會支援sql標準,而且還會有一些自己獨有的語法,這就稱之為...