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

歡迎訪問 生活随笔!

生活随笔

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

数据库

MySQL必知必会——了解SQL/SQL简介/使用MySQL

發(fā)布時間:2024/10/14 数据库 65 豆豆
生活随笔 收集整理的這篇文章主要介紹了 MySQL必知必会——了解SQL/SQL简介/使用MySQL 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

?

一、數(shù)據(jù)庫基礎(chǔ)

  • 數(shù)據(jù)庫(database) 保存有組織的數(shù)據(jù)的容器(通常是一個文件或一組文件)。
    • 數(shù)據(jù)庫軟件應(yīng)稱為DBMS(數(shù)據(jù)庫管理系統(tǒng));
    • 數(shù)據(jù)庫是通過DBMS創(chuàng)建和操縱的容器。
  • 表(table) 某種特定類型數(shù)據(jù)的結(jié)構(gòu)化清單。
    • 存儲在表中的數(shù)據(jù)是一種類型的數(shù)據(jù)或一個清單。
    • 表名:唯一性取決于多個因素,雖然在相同數(shù)據(jù)庫中不能兩次使用相同的表名,但在不同的數(shù)據(jù)庫中卻可以使用相同的表名。
  • 模式(schema) 關(guān)于數(shù)據(jù)庫和表的布局及特性的信息。
    • 模式可以用來描述數(shù)據(jù)庫中特定的表以及整個數(shù)據(jù)庫(和其中表的關(guān)系)。
    • 模式用作數(shù)據(jù)庫的同義詞。遺憾的是,模式的含義通常在上下文中并不是很清晰。
  • 列(column) 表中的一個字段。所有表都是由一個或多個列組成的。
    • 表由列組成。
    • 正確地將數(shù)據(jù)分解為多個列極為重要。
  • 數(shù)據(jù)類型(datatype) 所容許的數(shù)據(jù)的類型。每個表列都有相應(yīng)的數(shù)據(jù)類型,它限制(或容許)該列中存儲的數(shù)據(jù)。
    • 數(shù)據(jù)類型還幫助正確地排序數(shù)據(jù),并在優(yōu)化磁盤使用方面起重要的作用。
  • 行(row) 表中的一個記錄。
    • 表中的數(shù)據(jù)是按行存儲的,所保存的每個記錄存儲在自己的行內(nèi)。
    • 行( row)有時稱為數(shù)據(jù)庫記錄( record)。但行更專業(yè)。
  • 主鍵(primary key)一列(或一組列),其值能夠唯一區(qū)分表中每個行,可以唯一標識表中每行的這個列(或這組列)。
    • “鍵”也稱“鍵碼”或“碼”。
    • 主鍵用來表示一個特定的行。沒有主鍵,更新或刪除表中特定行很困難,因為沒有安全的方法保證只涉及相關(guān)的行。
    • 作主鍵的條件:
      • 任意兩行都不具有相同的主鍵值;
      • 每個行都必須具有一個主鍵值(主鍵列不允許NULL值)。
      • 使用多個列一起作為主鍵。所有列值的組合必須是唯一的(但單個列的值可以不唯一)。
    • 主鍵的最好習(xí)慣:
      • 不更新主鍵列中的值;
      • 不重用主鍵列的值;
      • 不在主鍵列中使用可能會更改的值。
  • SQL是結(jié)構(gòu)化查詢語言(Structured Query Language)的縮寫。
    • 是一種專門用來與數(shù)據(jù)庫通信的語言;
    • 由很少的詞構(gòu)成
    • 優(yōu)點:
      • SQL不是某個特定數(shù)據(jù)庫供應(yīng)商專有的語言。幾乎所有重要的DBMS都支持SQL。
      • SQL簡單易學(xué)。它的語句全都是由描述性很強的英語單詞組成,而且這些單詞的數(shù)目不多。
      • SQL盡管看上去很簡單,但它實際上是一種強有力的語言,靈活使用其語言元素,可以進行非常復(fù)雜和高級的數(shù)據(jù)庫操作。
    • 不要認為這些SQL語法是完全可移植的。

  • MySQL:數(shù)據(jù)的所有存儲、檢索、管理和處理實際上是由數(shù)據(jù)庫軟件——DBMS(數(shù)據(jù)庫管理系統(tǒng))完成的。 MySQL是一種DBMS,即它是一種數(shù)據(jù)庫軟件。
  • 優(yōu)點:
  • ?簡單——MySQL很容易安裝和使用。
  • ?可信賴——某些非常重要和聲望很高的公司、站點使用MySQL,這些公司和站點都用MySQL來處理自己的重要數(shù)據(jù)。
  • ?性能——MySQL執(zhí)行很快(非常快)。
  • 成本——MySQL是開放源代碼的,一般可以免費使用(甚至可免費修改)。
  • 缺點:它并不總是支持其他DBMS提供的功能和特性。
  • DBMS可分為兩類:
  • 基于共享文件系統(tǒng)的DBMS
  • Microsoft Access和FileMaker
  • 用于桌面用途
  • 基于客戶機—服務(wù)器的DBMS
  • MySQL、 Oracle以及Microsoft SQL Server
  • 應(yīng)用分為兩個不同的部分:
  • 服務(wù)器:負責(zé)所有數(shù)據(jù)訪問和處理的一個軟件。這個軟件運行在稱為數(shù)據(jù)庫服務(wù)器的計算機上。
  • 與數(shù)據(jù)文件打交道。關(guān)于數(shù)據(jù)、數(shù)據(jù)添加、刪除和數(shù)據(jù)更新的所有請求都由服務(wù)器軟件完成。
  • 客戶機:與用戶打交道的軟件。
  • 客戶機和服務(wù)器軟件可能安裝在兩臺計算機或一臺計算機上。不管它們在不在相同的計算機上,為進行所有數(shù)據(jù)庫交互,客戶機軟件都要與服務(wù)器軟件進行通信。
  • 為了使用MySQL,需要訪問運行MySQL服務(wù)器軟件的計算機和發(fā)布命令到MySQL的客戶機軟件的計算機。
  • 服務(wù)器軟件為MySQL DBMS。你可以在本地安裝的副本上運行,也可以連接到運行在你具有訪問權(quán)的遠程服務(wù)器上的一個副本。
  • 客戶機可以是MySQL提供的工具、腳本語言(如Perl)、 Web應(yīng)用開發(fā)語言(如ASP、 ColdFusion、 JSP和PHP)、程序設(shè)計語言(如C、 C++、 Java)等。
  • mysql的簡單命令行實用程序
  • 在操作系統(tǒng)命令提示符下輸入mysql;
  • 為了指定用戶登錄名ben,應(yīng)該使用mysql -u ben。
  • 為了給出用戶名、主機名、端口和口令,應(yīng)該使用mysql -u ben -p -h myserver -P 9999。
  • 完整的命令行選項和參數(shù)列表可用mysql --help獲得。
  • 注意:
  • 命令輸入在mysql>之后;
  • 命令用;或\g結(jié)束,換句話說,僅按Enter不執(zhí)行命令;
  • 輸入help或\h獲得幫助,也可以輸入更多的文本獲得特定命令的幫助(如,輸入help select獲得使用SELECT語句的幫助);
  • 輸入quit或exit退出命令行實用程序。
  • 可用于快速測試和執(zhí)行腳本;
  • 保證熟悉mysql命令行實用程序;
  • MySQL Administrator(MySQL管理器)是一個圖形交互客戶機,用來簡化MySQL服務(wù)器的管理。
  • MySQL Administrator提示輸入服務(wù)器和登錄信息(并且允許你保存服務(wù)器定義供以后選擇),然后顯示允許選擇不同視圖的圖標。
  • Server Information(服務(wù)器信息)顯示客戶機和被連接的服務(wù)器的狀態(tài)和版本信息;
  • Service Control(服務(wù)控制)允許停止和啟動MySQL以及指定服務(wù)器特性;
  • User Administration(用戶管理)用來定義MySQL用戶、登錄和權(quán)限;
  • Catalogs(目錄)列出可用的數(shù)據(jù)庫并允許創(chuàng)建數(shù)據(jù)庫和表。
  • 可以使用Create New Schema選項,創(chuàng)建一個數(shù)據(jù)源。書中各個例子使用一個名為crashcourse的數(shù)據(jù)源。
  • 快速訪問其他工具
  • MySQL Query Browser也包含啟動mysql命令行實用程序和
  • MySQL Administrator的菜單選項。
  • MySQL Query Browser為一個圖形交互客戶機,用來編寫和執(zhí)行MySQL命令。
  • MySQL Query Browser要求輸入服務(wù)器和登錄信息(在MySQL QueryBrowser和MySQL Administrator之間共享保存的定義),然后顯示應(yīng)用界面。
  • 注意下面幾點:
  • 輸入MySQL命令到屏幕頂上的窗口中。在輸入語句后,單擊Execute按鈕把它提交給MySQL處理。
  • 結(jié)果(如果有)顯示在屏幕左邊的大區(qū)域網(wǎng)格中。
  • 多條語句和結(jié)果顯示在它們自己的標簽中,并且允許快速切換。
  • 屏幕右邊是一個標簽,它列出所有可能的數(shù)據(jù)源(這里稱為大綱),展開任一數(shù)據(jù)源查看它的表,展開任一個表查看它的列。
  • 還可以選擇表和列讓MySQL Query Browser為你編寫MySQL語句。
  • Schemata(大綱)標簽的右邊是一個History(歷史)標簽,它保持MySQL語句的執(zhí)行歷史。在需要測試不同版本的MySQL語句時,它非常有用。
  • 關(guān)于MySQL語法、函數(shù)等的幫助可在屏幕右下角得到。

  • 要求在能執(zhí)行命令之前登錄到DBMS。
  • MySQL在內(nèi)部保存自己的用戶列表,并且把每個用戶與各種權(quán)限關(guān)聯(lián)起來。
  • MySQL Administrator Users視圖提供了一個簡單的界面,可用來定義新用戶,包括賦予口令和訪問權(quán)限。
  • 為了連接到MySQL,需要以下信息:
  • 主機名(計算機名)——如果連接到本地MySQL服務(wù)器, 為localhost;
  • 端口(如果使用默認端口3306之外的端口);
  • 一個合法的用戶名;
  • 用戶口令(如果需要)。
  • 所有這些信息都可以傳遞給mysql命令行實用程序,或輸入到MySQL Administrator和MySQL Query Browser的服務(wù)器連接屏幕。
  • 執(zhí)行任意數(shù)據(jù)庫操作前,需要選擇一個數(shù)據(jù)庫。為此,可使用USE關(guān)鍵字。
  • 關(guān)鍵字(key word) :作為MySQL語言組成部分的一個保留字。決不要用關(guān)鍵字命名一個表或列。
  • 為了使用crashcourse數(shù)據(jù)庫,應(yīng)該,用USE關(guān)鍵字:
  • 輸入:USE crashcourse
  • 輸出:Database changed
  • USE語句并不返回任何結(jié)果。依賴于使用的客戶機,顯示某種形式的通知。例如,這里顯示出的Database changed消息是mysql命令行實用程序在數(shù)據(jù)庫選擇成功后顯示的。
  • 了解可以使用的數(shù)據(jù)庫名,用SHOW關(guān)鍵字:
  • 輸入:SHOW DATABASES;
  • 輸出:
  • SHOW DATABASES;返回可用數(shù)據(jù)庫的一個列表。包含在這個列表中的可能是MySQL內(nèi)部使用的數(shù)據(jù)庫(如,mysql和
    information_schema)
  • 獲得一個數(shù)據(jù)庫內(nèi)的表的列表:
  • 輸入:SHOW TABLES;
  • 輸出:
  • SHOW TABLES;返回當前選擇的數(shù)據(jù)庫內(nèi)可用表的列表
  • SHOW也可以用來顯示表列:
  • 輸入:SHOW COLUMNS? FROM customers
  • 輸出:
  • SHOW COLUMNS 要 求 給 出 一 個 表 名 ( 這 個 例 子 中 的 FROM customers),它對每個字段返回一行,行中包含字段名、數(shù)據(jù)類型、是否允許NULL、鍵信息、默認值以及其他信息(如字段cust_id的auto_increment)。
  • 自動增量:唯一值。MySQL可以自動地為每個行分配下一個可用編號,如果需要它,則必須在用CREATE語句創(chuàng)建表時把它作為表定義的組成部分。
  • DESCRIBE語句: MySQL支持用DESCRIBE作為SHOW COLUMNS FROM的一種快捷方式。DESCRIBE customers;SHOW COLUMNS FROM customers;的一種快捷方式。
  • 其他SHOW語句還有:
  • SHOW STATUS,用于顯示廣泛的服務(wù)器狀態(tài)信息;
  • SHOW CREATE DATABASE和SHOW CREATE TABLE,分別用來顯示創(chuàng)建特定數(shù)據(jù)庫或表的MySQL語句;
  • SHOW GRANTS,用來顯示授予用戶(所有用戶或特定用戶)的安全權(quán)限;
  • SHOW ERRORSSHOW WARNINGS, 用來顯示服務(wù)器錯誤或警告消息。

  • ?

    ?

    ?

    ?

    ?

    ?

    ?

    與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖

    總結(jié)

    以上是生活随笔為你收集整理的MySQL必知必会——了解SQL/SQL简介/使用MySQL的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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