日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

【宋红康 MySQL数据库】【03】SQL概述_常见的数据库对象

發(fā)布時間:2023/12/14 数据库 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【宋红康 MySQL数据库】【03】SQL概述_常见的数据库对象 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

持續(xù)學習&持續(xù)更新中…

學習態(tài)度:守破離


【宋紅康 MySQL數(shù)據(jù)庫】【03】SQL概述_常見的數(shù)據(jù)庫對象

    • SQL概述
        • 什么是SQL
        • SQL背景知識
        • SQL分類
            • DDL(Data Definition Languages、數(shù)據(jù)定義語言)
            • DML(Data Manipulation Language、數(shù)據(jù)操作語言)
            • DCL(Data Control Language、數(shù)據(jù)控制語言)
    • SQL語言的規(guī)則與規(guī)范
        • 基本規(guī)則
        • 大小寫規(guī)范
        • 注釋
        • 命名規(guī)則
    • 常見的數(shù)據(jù)庫對象
    • 參考

SQL概述

什么是SQL

  • SQL 指結(jié)構(gòu)化查詢語言
  • SQL 使我們有能力訪問數(shù)據(jù)庫
  • SQL 是一種 ANSI 的標準計算機語言

SQL背景知識

  • 1974 年,IBM 研究員發(fā)布了一篇揭開數(shù)據(jù)庫技術的論文《SEQUEL:一門結(jié)構(gòu)化的英語查詢語言》,直到今天這門結(jié)構(gòu)化的查詢語言并沒有太大的變化,相比于其他語言,SQL 的半衰期可以說是非常長了。

  • SQL(Structured Query Language,結(jié)構(gòu)化查詢語言)是使用關系模型的數(shù)據(jù)庫應用語言,與數(shù)據(jù)直接打交道,由IBM上世紀70年代開發(fā)出來。后由美國國家標準局(ANSI)開始著手制定SQL標準,先后有SQL-86,SQL-89,SQL-92,SQL-99等標準。

  • SQL 有兩個重要的標準,分別是 SQL92 和 SQL99,它們分別代表了 92 年和 99 年頒布的 SQL 標準,我們今天使用的 SQL 語言依然遵循這些標準。

  • 不同的數(shù)據(jù)庫生產(chǎn)廠商都支持SQL語句,但都有特有內(nèi)容。

SQL分類

DDL(Data Definition Languages、數(shù)據(jù)定義語言)
  • 這些語句定義了不同的數(shù)據(jù)庫、表、視圖、索引等數(shù)據(jù)庫對象,還可以用來創(chuàng)建、刪除、修改數(shù)據(jù)庫和數(shù)據(jù)表的結(jié)構(gòu)。

  • 主要的語句關鍵字包括CREATE、DROP、ALTER、RENAME、TRUNCATE等。

DML(Data Manipulation Language、數(shù)據(jù)操作語言)
  • 用于添加、刪除、更新和查詢數(shù)據(jù)庫記錄,并檢查數(shù)據(jù)完整性。
  • 主要的語句關鍵字包括INSERT、DELETE、UPDATE、SELECT等。
  • SELECT是SQL語言的基礎,最為重要。

因為查詢語句使用的非常的頻繁,所以很多人把查詢語句單拎出來一類:DQL(數(shù)據(jù)查詢語言)。

DCL(Data Control Language、數(shù)據(jù)控制語言)
  • 用于定義數(shù)據(jù)庫、表、字段、用戶的訪問權(quán)限和安全級別。
  • 主要的語句關鍵字包括GRANT、REVOKE、COMMIT、ROLLBACK、SAVEPOINT等。

還有單獨將COMMIT、ROLLBACK 取出來稱為TCL (Transaction Control Language,事務控制語言)。

SQL語言的規(guī)則與規(guī)范

基本規(guī)則

  • SQL 可以寫在一行或者多行。為了提高可讀性,各子句分行寫,必要時使用縮進
  • 每條命令以 ; 或 \g 或 \G 結(jié)束
  • 關鍵字不能被縮寫也不能分行
  • 關于標點符號
    • 必須保證所有的()、單引號、雙引號是成對結(jié)束的
    • 必須使用英文狀態(tài)下的半角輸入方式
    • 字符串型和日期時間類型的數(shù)據(jù)可以使用單引號表示
    • 列的別名,盡量使用雙引號,而且不建議省略as

大小寫規(guī)范

  • MySQL 在 Windows 環(huán)境下是大小寫不敏感的
  • MySQL 在 Linux 環(huán)境下是大小寫敏感的
    • 數(shù)據(jù)庫名、表名、表的別名、變量名是嚴格區(qū)分大小寫的
    • 關鍵字、函數(shù)名、列名(或字段名)、列的別名(字段的別名) 是忽略大小寫的。
  • 推薦采用統(tǒng)一的書寫規(guī)范:
    • 數(shù)據(jù)庫名、表名、表別名、字段名、字段別名等都小寫
    • SQL 關鍵字、函數(shù)名、綁定變量等都大寫

注釋

可以使用如下格式的注釋結(jié)構(gòu)

單行注釋:#注釋文字(MySQL特有的方式) 單行注釋:-- 注釋文字(--后面必須包含一個空格。) 多行注釋:/* 注釋文字 */

命名規(guī)則

  • 數(shù)據(jù)庫、表名不得超過30個字符,變量名限制為29個
  • 必須只能包含 A–Z, a–z, 0–9, _共63個字符
  • 數(shù)據(jù)庫名、表名、字段名等對象名中間不要包含空格
  • 同一個MySQL軟件中,數(shù)據(jù)庫不能同名;同一個庫中,表不能重名;同一個表中,字段不能重名
  • 必須保證你的字段沒有和保留字、數(shù)據(jù)庫系統(tǒng)或常用方法沖突。如果堅持使用,請在SQL語句中使用``(著重號)引起來
  • 保持字段名和類型的一致性,在命名字段并為其指定數(shù)據(jù)類型的時候一定要保證一致性。假如數(shù)據(jù)類型在一個表里是整數(shù),那在另一個表里可就別變成字符型了

舉例:

#以下兩句是一樣的,不區(qū)分大小寫 show databases; SHOW DATABASES;#創(chuàng)建表格 #create table student info(...); #表名錯誤,因為表名有空格 create table student_info(...); #其中order使用``,因為order和系統(tǒng)關鍵字或系統(tǒng)函數(shù)名等預定義標識符重名了 CREATE TABLE `order`(id INT,lname VARCHAR(20) );select id as "編號", `name` as "姓名" from t_stu; #起別名時,as都可以省略 select id as 編號, `name` as 姓名 from t_stu; #如果字段別名中沒有空格,那么可以省略"" select id as "編 號", `name` as "姓 名" from t_stu; #錯誤,如果字段別名中有空格,那么不能省略""

常見的數(shù)據(jù)庫對象

對象描述
表(TABLE)表是存儲數(shù)據(jù)的邏輯單元,以行和列的形式存在,列就是字段,行就是記錄
數(shù)據(jù)字典就是系統(tǒng)表,存放數(shù)據(jù)庫相關信息的表。系統(tǒng)表的數(shù)據(jù)通常由數(shù)據(jù)庫系統(tǒng)維護,程序員通常不應該修改,只可查看
約束(CONSTRAINT)執(zhí)行數(shù)據(jù)校驗的規(guī)則,用于保證數(shù)據(jù)完整性的規(guī)則
視圖(VIEW)一個或者多個數(shù)據(jù)表里的數(shù)據(jù)的邏輯顯示,視圖并不存儲數(shù)據(jù)
索引(INDEX)用于提高查詢性能,相當于書的目錄
存儲過程(PROCEDURE)用于完成一次完整的業(yè)務處理,沒有返回值,但可通過傳出參數(shù)將多個值傳給調(diào)用環(huán)境
存儲函數(shù)(FUNCTION)用于完成一次特定的計算,具有一個返回值
觸發(fā)器(TRIGGER)相當于一個事件監(jiān)聽器,當數(shù)據(jù)庫發(fā)生特定事件后,觸發(fā)器被觸發(fā),完成相應的處理

參考

尚硅谷宋紅康: MySQL數(shù)據(jù)庫(入門到高級,菜鳥到大牛).


本文完,感謝您的關注支持!


總結(jié)

以上是生活随笔為你收集整理的【宋红康 MySQL数据库】【03】SQL概述_常见的数据库对象的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。