初识SQL
一、數(shù)據(jù)庫基礎(chǔ)
1、什么是數(shù)據(jù)庫?
數(shù)據(jù)庫(database),保存有組織的數(shù)據(jù)的容器(通常是一個(gè)文件或一組文件)。
數(shù)據(jù)庫和數(shù)據(jù)庫軟件的區(qū)別:
數(shù)據(jù)庫軟件應(yīng)稱為DBMS(數(shù)據(jù)庫管理系統(tǒng))。數(shù)據(jù)庫是通過DBMS創(chuàng)建和操縱的容器。數(shù)據(jù)庫可以是保存在硬件設(shè)備上的文件,但也可以不是。很大程度上說,數(shù)據(jù)庫究竟是文件還是別的東西并不重要,因?yàn)槟悴⒉恢苯釉L問數(shù)據(jù)庫,你使用的是DBMS,它替你訪問數(shù)據(jù)庫。2、表
(1)表(table),某種特定類型數(shù)據(jù)的結(jié)構(gòu)化清單。
存儲在表中的數(shù)據(jù)是一種類型的數(shù)據(jù)或一個(gè)清單。數(shù)據(jù)庫中的每一個(gè)表都有一個(gè)名字,用來表示自己。此名字是唯一的,這表示數(shù)據(jù)庫中沒有其他表具有相同的名字。
表名:表明的唯一性取決于多個(gè)因素,如數(shù)據(jù)庫名和表名等的結(jié)合。在相同的數(shù)據(jù)庫中不能兩次使用相同的表名,但在不同的數(shù)據(jù)庫中卻可以使用相同的表名。
(2)模式(schema),關(guān)于數(shù)據(jù)庫和表的布局及特性的信息。
描述表的這組信息就是所謂的模式,模式可以用來描述數(shù)據(jù)庫中的特點(diǎn)的表以及整個(gè)數(shù)據(jù)庫(和其中表的關(guān)系)。
3、列和數(shù)據(jù)類型 (表由列組成。列中存儲著表中某部分的信息。)
(1)列(column),表中的一個(gè)字段。所有的表都是由一個(gè)或多個(gè)列組成的。
比如數(shù)據(jù)庫就是一個(gè)網(wǎng)格,網(wǎng)格中的每一列存儲著一條特定的信息。例如,在顧客表中,一個(gè)列存儲著顧客編號,另一個(gè)列存儲著顧客姓名,地址、城市等等都存儲在各自的列中。
(2)數(shù)據(jù)類型(datatype),所容許的數(shù)據(jù)的類型。每個(gè)表列都有相應(yīng)的數(shù)據(jù)類型,它限制(或容許)該列中存儲的數(shù)據(jù)。數(shù)據(jù)類型限制可存儲在列中的數(shù)據(jù)類型(例如,防止在數(shù)值字段中錄入字符值)。數(shù)據(jù)類型還幫助正確的排序數(shù)據(jù),并在優(yōu)化磁盤使用方面起重要作用。
4、行
行(row),表中的一個(gè)記錄。
表中的數(shù)據(jù)是按照行存儲的,所保存的每一個(gè)記錄存儲在自己的行內(nèi)。如果將表想象為網(wǎng)格,網(wǎng)格中垂直的列為表列,水平行為表行。(例如,顧客表可以存儲一個(gè)顧客。表中的行數(shù)為記錄的總數(shù)。)
行(row)、數(shù)據(jù)庫記錄(record),在很大程度上這兩個(gè)術(shù)語是可以互相代替的。但從技術(shù)上來講,行才是正確的術(shù)語。
5、主鍵
主鍵(primary key),一列(或一組列),其值能夠唯一區(qū)分表中的每個(gè)行。
表中的每一行都應(yīng)該有可以標(biāo)識自己的一列(或一組列)。(例如,一個(gè)顧客表可以使用顧客編號列,而訂單表可以使用訂單ID,雇員表可以使用雇員ID或雇員社會保險(xiǎn)號。)
唯一標(biāo)識標(biāo)中每行的這個(gè)列(或這組列)稱為主鍵。主鍵用來表示一個(gè)特定的行。沒有主鍵,更新或刪除表中特定行很困難,因?yàn)闆]有安全的方法保證只涉及相關(guān)的行。
表中的任何列都可以作為組件,只要滿足一下條件:
任意兩行都不具有相同的主鍵值。
每一行都必須具有一個(gè)主鍵值(主鍵列不允許NULL值)
主鍵值規(guī)則:
主鍵通常定義在表的一列上,但這不是必須的,也可以一起使用多個(gè)列作為主鍵。在使用多個(gè)列作為主鍵。在使用多列作為主鍵時(shí),上述條件必須應(yīng)用到構(gòu)成主鍵的所有列,所有列值的組合必須時(shí)唯一的(但單個(gè)列的值可以不唯一)。
主鍵的最好習(xí)慣:
不更新主鍵列中的值;
不重用主鍵列的值;
不再主鍵列中使用可能會更改的值。(例如,如果使用一個(gè)名字作為主鍵以標(biāo)識某個(gè)供應(yīng)商,當(dāng)該供應(yīng)商合并和更改其名字時(shí),必須更改這個(gè)主鍵。)
?
二、什么是SQL
1、SQL:是結(jié)構(gòu)化查詢語言(Structured Query Language)的縮寫。SQL是一種專門用來與數(shù)據(jù)庫通信的語言。
2、SQL的優(yōu)點(diǎn):
(1)SQL不是某個(gè)特定數(shù)據(jù)庫供應(yīng)商專有的語言。幾乎所有重要的DBMS都支持SQL。能與所有數(shù)據(jù)庫打交道。
(2)SQL簡單易學(xué)。它的語句全都是描述性很強(qiáng)的英語單詞組成,而且單詞數(shù)目不多。
(3)SQL盡管看上去很簡單,但實(shí)際上是一種強(qiáng)有力的語言,靈活使用其語言元素,可以進(jìn)行非常復(fù)雜和高級的數(shù)據(jù)庫操作。
?
轉(zhuǎn)載于:https://www.cnblogs.com/LW-5208/articles/9990535.html
總結(jié)
- 上一篇: 微型计算机控制技术应用,微型计算机控制技
- 下一篇: linux cmake编译源码,linu