MySQL基礎知識總結

目錄

1.啓動MySQL服務

2.關閉MySQL服務

3.登錄

4.退出登錄

5.顯示當前服務器版本

6.顯示當前日期時間

7.顯示當前用戶

8.創建數據庫

9.查看數據庫編碼方式

10.修改數據庫的編碼方式

11.查看當前數據庫下數據表列表

12.刪除數據庫

13.查看警告

14.數據類型

15.打開數據庫

16.查看當前打開的數據庫

17.創建數據表

18.查看數據表(當前數據庫下和其他數據庫下的數據表)

19.查看數據表結構

20.向數據表插入記錄

21.查看數據表記錄

22.mysql空值與非空

 


1.啓動MySQL服務

打開MySQL安裝目錄下的bin文件,輸入:

net start mysql

2.關閉MySQL服務

net stop mysql

3.登錄

MySql服務開啓後,輸入:

mysql -u {username} -p {password}

username:用戶名,我這裏用戶名是root

password:密碼,我這裏密碼是123456

4.

4.退出登錄

quit;

5.顯示當前服務器版本

SELECT VERSION();

6.顯示當前日期時間

SELECT NO();

7.顯示當前用戶

SELECT USER();

8.創建數據庫

CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name;

{}表示必選項,[]表示可選項,|表示或

CHARACTER SET [=] charset_name表示編碼方式

創建一個名字爲test的數據庫:

9.查看數據庫編碼方式

創建時採用默認編碼方式,即爲my.ini中指定的編碼方式。我的my.ini中指定默認編碼方式爲utf8.

SHOW CREATE DATABASE db_name;

i

可以看到編碼方式爲utf8

10.修改數據庫的編碼方式

ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name;

修改爲gbk編碼方式

可以看到已經修改爲gbk。

11.查看當前數據庫下數據表列表

SHOW DATABASES;

可以看到剛纔創建的數據庫已存在。

12.刪除數據庫

DROP DATABASE db_name;

可以看到已經刪除。

13.查看警告

SHOW WARNINGS;

當前沒有警告。

14.數據類型

整型
數據類型 存儲範圍 字節
TINYINT

有符號值:-128~+127(-2^7~2^7-1

無符號值:0~255(0~2^8-1

1
SMALLINT

有符號值:-32768~+32767(-2^{15}~2^{15}-1

無符號值:0~65535(0~2^{16}-1

2
MEDIUMINT

有符號值:-8388608~+8388607(-2^{23}~2^{23}-1

無符號值:0~16777215(0~2^{24}-1

3
INT

有符號值:-2147483648~+2147483647(-2^{31}~2^{31}-1

無符號值:0~4294967295(0~2^{32}-1

4
BIGINT

有符號值:-9223372036854775808~+9223372036854775808(-2^{63}~2^{63}-1

無符號值:0~18446744073709551615(0~2^{64}-1

8
浮點型
數據類型 存儲範圍 字節
FLOAT(M,D)

-3.402823466E+38~-1.175494351E-38、0、1.175494351E-38~3.402823466E+38。

M是數字總位數,D是小數點後面的位數。

 
DOUBLE(M,D)

-1.7976931348623157E+308~-2.2250738585072014E-308、0、

2.2250738585072014E-308~1.7976931348623157E+308

 
日期
數據類型 存儲範圍 字節
YEAR 默認4位1970~2069(年) 1
TIME -8385959~+8385959 3
DATE 1000/1/1~9999/12/31 3
DATETIME 1000/1/1 00:00:00~9999/12/31 23:59:59 8
TIMESTAMP 1970/1/1 00:00:00~2037  4
字符型
數據類型 存儲範圍 備註
CHAR(M) M個字節,0\leq M\leq 255 定長
VARCHAR(M) L+1個字節,其中L\leq M0\leq M\leq 65536 變長
TINYTEXT L+1個字節,其中L< 2^8  
TEXT L+2個字節,其中L< 2^{16}  
MEDIUMTEXT L+3個字節,其中L< 2^{24}  
LONGTEXT L+4個字節,其中L< 2^{32}  
ENUM('value1','value2',...) 1或2個字節,取決於枚舉值的個數(最多65535個值)  
SET('value1','value2',...) 1、2、3、4或8個字節,取決於set成員的數目(最多64個成員)  

15.打開數據庫

USE db_name

現在已經打開了test數據庫,接下來驗證是否打開了test數據庫。

16.查看當前打開的數據庫

SELECT DATABASE();

確實已經打開了test數據庫。接下來在此數據庫創建數據表。

17.創建數據表

CREATE TABLE [IF NOT EXISTS] table_name(column_name data_type,...)

創建一個數據表,名字是tb1,有3個變量姓名、年齡、工資。

18.查看數據表(當前數據庫下和其他數據庫下的數據表)

SHOW TABLES [FORM db_name];

加上FORM db_name後就可以查看db_name數據庫下的數據表。

test數據庫下只有一個數據表,就是剛剛創建的tb1。

mysql數據庫下有33個數據表。

19.查看數據表結構

SHOW COLUMNS FROM tb_name

查看發現數據表結構就是剛纔創建的結構。

20.向數據表插入記錄

INSERT [INTO] tb_name [(col_name,...)] VALUES(val,...)

如果省略掉中括號中的col_name,則必須給所有的列賦值。

如果不全都賦值,則出錯,如上圖第2行命令所示。

加上中括號中的col_name之後就可以寫固定列了。如上圖所示。

21.查看數據表記錄

SELECT expr,.... FROM tb_name

列出數據表tb1全部字段。

22.mysql空值與非空

NULL,字段值可以爲空

NOT NULL,字段值禁止爲空

創建一個tb2數據表,名字不能爲空,年齡可以爲空。賦值如下圖:

如果將名字賦值爲空,則報錯,如下圖提示username不能爲空:

23.自動編號

AUTO_INCREMENT

必須與主鍵組合使用

默認情況下,起始值爲1,每次增加量爲1.

沒有與主鍵合用,錯誤。

24.主鍵(PRIMARY KEY)

每張數據表只能存在一個主鍵

主鍵保證記錄的唯一性

主鍵自動爲NOT NULL

主鍵不一定與AUTO_INCREMENT一起使用。

id自動賦值,只需要給username賦值即可。

可以看到id自動增加,保證記錄唯一性。

創建一個數據表,定義主鍵不是自動編號,如下圖

插入編號和username,如下圖

如果插入相同編號會怎麼樣呢?看下圖:

說明AUTO_INCREMENT必須與PRIMARY KEY一起使用,但PRIMARY KEY不一定與UTO_INCREMENT一起使用。

25.唯一約束(UNIQUE KEY)

  • 唯一約束可以保證記錄的唯一性
  • 唯一約束的字段可以爲空值(NULL)
  • 每張數據表可以存在多個唯一約束

創建一個新數據表,將username設置爲UNIQUE KEY

當寫入兩個相同名字時,系統提示錯誤。

26.默認約束

  • 默認值
  • 當插入記錄時,如果沒有明確爲字段賦值,則自動賦予默認值。

新建數據表,將性別默認爲3,如下圖

當不給性別賦值時,性別默認爲3,驗證如下圖:

只給姓名賦值,性別自動賦值爲3.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章