溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Mysql有哪些數(shù)據(jù)類型及如何使用SQL結(jié)構(gòu)化查詢語句

發(fā)布時間:2020-05-28 16:49:01 來源:網(wǎng)絡(luò) 閱讀:289 作者:三月 欄目:數(shù)據(jù)庫

本文主要給大家介紹Mysql有哪些數(shù)據(jù)類型及如何使用SQL結(jié)構(gòu)化查詢語句,文章內(nèi)容都是筆者用心摘選和編輯的,具有一定的針對性,對大家的參考意義還是比較大的,下面跟筆者一起了解下Mysql有哪些數(shù)據(jù)類型及如何使用SQL結(jié)構(gòu)化查詢語句吧。

一、簡介

由MySQL AB公司開發(fā),是最流行的開放源碼SQL數(shù)據(jù)庫管理系統(tǒng),主要特點(diǎn):

  • 1、是一種數(shù)據(jù)庫管理系統(tǒng)

  • 2、是一種關(guān)聯(lián)數(shù)據(jù)庫管理系統(tǒng)

  • 3、是一種開放源碼軟件,且有大量可用的共享MySQL軟件

  • 4、MySQL數(shù)據(jù)庫云服務(wù)器具有快速、可靠和易于使用的特點(diǎn)

  • 5、MySQL云服務(wù)器工作在客戶端/云服務(wù)器模式下,或嵌入式系統(tǒng)中


  • InnoDB存儲引擎將InnoDB表保存在一個表空間內(nèi),該表空間可由數(shù)個文件創(chuàng)建。這樣,表的大小就能超過單獨(dú)文件的最大容量。表空間可包括原始磁盤分區(qū),從而使得很大的表成為可能。表空間的最大容量為64TB。


二、MySQL 存儲引擎,也稱表類型

2.1. MySQL 存儲引擎,也被稱為表類型:

 MyISAM表:無事務(wù)處理功能,支持表鎖

     .frm:表結(jié)構(gòu)定義文件

     .MYD:表數(shù)據(jù)文件

     .MYI:表索引文件

 InnoDB表:支持事務(wù)處理功能,支持行鎖

     .frm:表結(jié)構(gòu)定義文件

     .ibd:表空間(包含數(shù)據(jù)和索引文件)


2.2. MySQL常用的查詢命令:

    SHOW ENGINES;        #查看數(shù)據(jù)庫支持的引擎及狀態(tài)。

    SHOW TABLE STATUS LIKE 'user' \G  #查看表user的屬性信息,\G豎排顯示

    mysqld --help --verbose     #查看mysql支持的各種相關(guān)指令

     SHOW CHARACTER SET;       #顯示所有支持的字符集

     SHOW COLLATION ;       #顯示各個字符集下的排序規(guī)則


2.3. 程序語言連接數(shù)據(jù)的方式:

    動態(tài)SQL:通過函數(shù)或方法與數(shù)據(jù)庫服務(wù)建立連接,

    嵌入式SQL:


2.4. MySQL工具:

 客戶端工具:

   mysql(登錄工具),   mysqladmin(管理工具),

   mysqldump(備份工具),   mysqlimport,mysqlcheck 

 云服務(wù)器端工具:

    mysqld(啟動進(jìn)程),   mysqld_safe(安全線程),

    mysqld_multi(支持多實(shí)例)


2.5. MySQL配置文件:my.cnf

 配置文件啟動順序?yàn)椋?etc/my.cnf  -->/etc/mysql/my.cnf  -->$MYSQL_HOME/my.cnf

   --> --default-extra-file=/path/to/somefile  -->~/.my.cnf


2.6. MySQL啟動失敗的原因大致有:

    1、此前mysql服務(wù)未關(guān)閉  killall mysqld

    2、數(shù)據(jù)初始化失敗

    3、數(shù)據(jù)目錄位置錯誤    

    4、數(shù)據(jù)目錄權(quán)限問題


2.7. DBA的工作內(nèi)容:

    開發(fā)DBA:數(shù)據(jù)庫設(shè)計(jì),SQL語句,存儲過程,存儲函數(shù),觸發(fā)器

    管理DBA:安裝,升級,備份,恢復(fù),用戶管理,權(quán)限管理,監(jiān)控,性能分析,基準(zhǔn)測試


2.8. MySQL數(shù)據(jù)類型:

  數(shù)值型: 

      精確數(shù)值型:   int(整數(shù)型)     decimal(十進(jìn)制型)

      近似數(shù)值型: float(單精度浮點(diǎn)型) double(雙精度浮點(diǎn)型)  real(實(shí)數(shù)型)

  字符型:

     定長字符型:CHAR(NUM), BINARY(區(qū)分大小寫)  最長不超過255個字符

     變長字符型:VARCHAR(NUM), VARBINARY(區(qū)分大小寫)  最長不超過65535

     ENUM枚舉型:ENUM('A','BB','CC','DD')用戶只能在列舉中選擇一個

     SET枚舉字符串型

  日期時間型:

     date日期, time時間,  datetime日期時間, timestamp時間戳,  year年


2.9. 數(shù)據(jù)類型需具備以下幾點(diǎn):

    1、存入的值類型

    2、占據(jù)的存儲空間

    3、是變長還是定長

    4、如何比較及排序

    5、是否能夠索引


AUTO_INCREMENT 自動增長類型,需滿足幾點(diǎn):必須為整型,非空,元符號,主鍵或唯一鍵

 eg:CREATE TABLE test(ID INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,Name CHAR(20))

  創(chuàng)建一個test表,包含2個字段ID和Name,ID字段的修飾符必須是INT(整型),UNSIGNED(無符號的)


  AUTO_INCREMENT(自動增長),NOT NULL(非空的),PRIMARY KEY(主鍵)。

  Name字段類型為CHAR(20)(定長字符型長度為20).

 mysql> SELECT LAST_INSERT_ID();


2.10. MySQL云服務(wù)器變量:

   按作用域,分兩類:

   全局變量

        SHOW GLOBAL VARIABLES LIKE ' ';    查看全局變量

    會話變量

        SHOW [SESSION] VARIABLES LIKE ' ';   查看會話變量

   按生效時間,分兩類:

       可動態(tài)調(diào)整的變量:可即時修改

       靜態(tài)變量:

            寫在配置文件中,通過參數(shù)傳遞給mysqld

     動態(tài)調(diào)整參數(shù)的生效方式:

       全局變量:對當(dāng)前會話無效,只對新建立會話有效;

       會話變量:即時生效,但只對當(dāng)前會話有效;


   云服務(wù)器變量:@@變量名

        顯示:SELECT

        設(shè)定:SET GLOBAL|SESSION 變量名='value'


mysql> SET GLOBAL sql_mode='strict_all_tables';  #設(shè)定sql_mode的值為strict_all_tables

Query OK, 0 rows affected (0.00 sec)

mysql> SELECT @@global.sql_mode;  #查看sql_mode的全局變量

+-------------------+

| @@global.sql_mode |

+-------------------+

| STRICT_ALL_TABLES |

+-------------------+

1 row in set (0.00 sec)

mysql> SELECT @@sql_mode;  #查看sql_mode的會話變量

+------------+

| @@sql_mode |

+------------+

|            |

+------------+

1 row in set (0.00 sec)

看完以上關(guān)于Mysql有哪些數(shù)據(jù)類型及如何使用SQL結(jié)構(gòu)化查詢語句,很多讀者朋友肯定多少有一定的了解,如需獲取更多的行業(yè)知識信息 ,可以持續(xù)關(guān)注我們的行業(yè)資訊欄目的。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI