天天看點

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法

1.SQL簡介# 系列文章目錄

第一章 Oracle入門之sql的使用

文章目錄

    • 1.SQL簡介# 系列文章目錄
  • 一、sql是什麼?
  • 二、sql發展
  • 三、SQL能做什麼?
  • 四、RBMS概念
    • SQL RDBMS 概念
    • 什麼是表?
    • 什麼是字段?
    • 什麼是記錄或者行資料?
    • 什麼是列?
    • 什麼是空值?
    • SQL限制(後續課程詳細講述)
    • 資料完整性(後續課程詳細講述)
    • 資料庫規範化(後續課程詳細講述)
  • 五、資料模組化
  • 六、開發工具
  • 七、文法
    • select語句
    • from子句
    • where子句
    • group by子句
    • having 子句
    • select 清單
    • order by子句

一、sql是什麼?

SQL 是用于通路和處理資料庫的标準的計算機語言。本次課程将講解如何使用 SQL 通路和處理資料系統中的資料,這類資料庫包括:MySQL、SQL Server、Access、Oracle、Sybase、DB2和其他資料庫系統。

這些資料庫又是用來幹嘛的呢?

百度百科:https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BA%93%E7%AE%A1%E7%90%86%E7%B3%BB%E7%BB%9F/1239101?fr=aladdin

–持久化的存儲資料。(永久性的)

二、sql發展

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法

三、SQL能做什麼?

SQL可以建立新的資料庫及其對象(表,索引,視圖,存儲過程,函數和觸發器)。

SQL可以修改現有資料庫的結構。

SQL可以從資料庫中删除(删除)對象。

SQL可以TRUNCATE(删除)表中的所有記錄。

SQL可以對資料字典進行COMMENT。

SQL可以RENAME一個對象。

SQL可以從資料庫中選擇(檢索)資料。

SQL可以将資料插入到表中。

SQL可以更新表中的現有資料。

SQL可以從資料庫表中删除記錄。

SQL可以在資料庫中設定使用者的GRANT和REVOKE權限。

四、RBMS概念

W3CSCHOOL位址:https://www.w3cschool.cn/sql/sql-rcn831s0.html

SQL RDBMS 概念

RDBMS是關系資料庫管理系統(Relational Database Management System)的縮寫。

RDBMS是SQL的基礎,也是所有現代資料庫系統(如MS SQL Server、IBMDB2、Oracle、MySQL和MicrosoftAccess)的基礎。

關系資料庫管理系統(Relational Database Management System,RDBMS)是一種基于E.F.Codd提出的關系模型的資料庫管理系統。

什麼是表?

RDBMS中的資料存儲在稱為表的資料庫對象中。這個表基本上是一個相關資料條目的集合,它由許多列和行組成。請記住,表是關系資料庫中最常見和最簡單的資料存儲形式。

下面的程式是Customers表的一個示例

+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+
           

什麼是字段?

每個表都被分解成更小的實體,稱為字段。Customers表中的字段由ID、姓名、年齡、位址和薪資組成。

字段是表中的列,用于維護有關表中每條記錄的特定資訊。

什麼是記錄或者行資料?

記錄也稱為資料行,即表中存在的每個單獨的條目。例如,上面的Customers表中有7條記錄。下面是Customers表中的單行資料或記錄。

+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
+----+----------+-----+-----------+----------+
           

記錄是表中的水準實體。

什麼是列?

列是表中的垂直實體,其中包含與表中特定字段關聯的所有資訊。

例如,Customers表中的一列是Address,它表示位置描述,如下所示:

+-----------+
| ADDRESS   |
+-----------+
| Ahmedabad |
| Delhi     |
| Kota      |
| Mumbai    |
| Bhopal    |
| MP        |
| Indore    |
+----+------+
           

什麼是空值?

表中的空值是顯示為空的字段中的值,這意味着具有空值的字段是沒有值的字段。

非常重要的一點是空值不同于零值或包含空格的字段。具有空值的字段是在建立記錄時留白的字段。

空值表示:未知,不知道

SQL限制(後續課程詳細講述)

限制是在表上的資料列上強制執行的規則。它們用于限制可以進入表中的資料類型。

這確定了資料庫中資料的準确性和可靠性。

限制可以是列級别,也可以是表級别。列級限制僅應用于一列,而表級限制則應用于整個表。

以下是sql−中可用的一些最常用的限制

  • NOT NULL 限制:保證列中資料不能有 NULL 值
  • DEFAULT 限制:提供該列資料未指定時所采用的預設值
  • UNIQUE 限制:保證列中的所有資料各不相同
  • 主鍵限制:唯一辨別資料表中的行/記錄
  • 外鍵限制:唯一辨別其他表中的一條行/記錄
  • CHECK 限制:此限制保證列中的所有值滿足某一條件
  • 索引:用于在資料庫中快速建立或檢索資料

限制可以在建立表時規定(通過 CREATE TABLE 語句),或者在表建立之後規定(通過 ALTER TABLE 語句)。

資料完整性(後續課程詳細講述)

每個關系資料庫管理系統都存在以下類型的資料完整性:

實體完整性−表中沒有重複行。

域完整性−通過限制值的類型、格式或範圍來強制執行給定列的有效條目。

引用完整性−不能删除其他記錄使用的行。

使用者定義的完整性−強制執行一些不屬于實體、域或引用完整性的特定業務規則。

資料庫規範化(後續課程詳細講述)

資料庫規範化是在資料庫中有效地組織資料的過程。這個規範化過程有兩個原因:

  • 消除備援資料,例如,将相同的資料存儲在多個表中。
  • 確定資料依賴關系是有意義的。

這兩個原因都是值得追求的目标,因為它們減少了資料庫消耗的空間量,并確定了資料的邏輯存儲。

規範化由一系列指導原則組成,有助于指導您建立良好的資料庫結構。

規範化指導原則稱為範式,範式的目的是組織資料庫結構,使其符合第一範式、第二範式和第三範式的規則。

你可以更長遠的去選擇第四範式,第五範式,等等,但一般來說,第三範式已經足夠了。

第一範式(1NF)

第二範式(2NF)

第三範式(3NF)

五、資料模組化

後續課程講…

六、開發工具

PL/SQL Developer,Sql*Plus

七、文法

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法

select語句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
--簡單查詢案例 
select * from dual ; 
           

講解:sql教育訓練手冊 第一、二單元

總結:

from子句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
--例子
select * from sys_users;
           

where子句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
--例子

           

group by子句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
--例子
           

having 子句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法

select 清單

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法

order by子句

Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法
--例子

           
Oracle入門之SQL基礎一、sql是什麼?二、sql發展三、SQL能做什麼?四、RBMS概念五、資料模組化六、開發工具七、文法