五、MySQL數據庫表操作

一、MySQL數據庫表操作

我們在學習第三篇的時候有很多內容,我們並沒有詳解,我們會在這一篇之後的幾篇進行詳細的講述。

1. 創建表

我們之前使用了命令

CREATE TABLE IF NOT EXISTS abcd(
   id INT UNSIGNED AUTO_INCREMENT,
   name varchar(11) NOT NULL,
   age int,
   sex varchar(10),
   money decimal(5,2),
   PRIMARY KEY ( id )
)ENGINE=InnoDB DEFAULT CHARSET=utf8;

(類似這樣的命令,我們都稱爲SQL語句。)

我們一般在創建表的時候都會爲了自動化進行,所以我們都會去做判斷,我們就使用 IF NOT EXISTS 這個去做判斷,判斷表是否存在,存在的話我們就不創建了,不存在我們再去創建。

然後就是裏面的 UNSIGNED ,這個單詞就是表示無符號的意思,我之前在介紹數據庫中的數據類型時說過,MySQL數據庫默認是使用的有符號的,但是,我們其實是不需要帶有符號的,我們需要存儲的是大於0的那些數字。

接着後面就是後面的AUTO_INCREMENT,這個表示自動遞增,我們一般都會讓主鍵進行遞增,自己去設置主鍵。當然,你也可以自己設置主鍵。

其實除去UNSIGNEDAUTO_INCREMENT,還有修飾 約束的,就是這個SQL語句下面的PRIMARY KEY,標識該屬性爲該表的主鍵,可以唯一的標識對應的記錄,標誌了唯一,就不能再有重複的,好比我現在id插入了一個1,你再插入一個1就會報錯,除非把1這一條數據刪除了,你才能再插入主鍵爲1的這個。

然後就是DEFAULT約束,這個約束能夠在我們插入的時候沒有給值的情況下,給他一個默認值。

 

然後我們來創建一個表,創建表的規則是這樣的

CREATE TABLE 你要創建的表名字(
    字段名稱 數據類型 約束條件(這裏約束條件可以寫可以不寫),
    字段名稱 數據類型 約束條件,
    字段名稱 數據類型 約束條件
)

我們知道了這個再往下看,

我們打開Navicat,我們來寫一個創建表的SQL語句。

先使用工具創建一個數據庫,叫study

然後我們開始學習,創建好之後的庫,我們打開,然後我們點擊查詢,新建一個查詢。

我們一般把SQL都寫在下面,然後點擊運行進行運行調試。

我們來寫一個SQL,去創建一個book表。

這裏我推薦啊,一些MySQL的關鍵詞,大家儘量使用大寫,雖然Navicat給我們了高亮的提示,但是也要去大寫。

我們往這個表中填寫一些字段

就這些,id bookname price,我們就弄上三個字段。這個約束條件多的話,就用空格分開,然後照後面去寫就好了

!!!還有一點,就是最後的分號,一定要加上,一定!!!

然後全選,我們來執行一下

是OK的,刷新一下數據庫就能看到了。

點擊設計表,我們來查看一下我們剛剛創建的表。

可以看到啊,沒有問題,和我們設想的是一樣的。這樣我們一個簡單的表就創建好了

二、查看錶結構

我們除去用工具查看錶的結構,我們更重要的是學習使用SQL命令去查看,這個屬於基本功,大家也是要去學的。

查看錶結構

DESCRIBE 或者 DESC 你要查的表的名字;

然後我們來使用一下,我們呢,接着create table 命令後面接着寫,然後選中這條命令,鼠標右鍵,點擊運行已選擇的。

我們看一下結果

是OK的,我們可以看到表的結構。

當然了,這個結構我們是看了,我們也能去查看一下我們創建表時候的那條SQL語句,命令如下

SHOW CREATE TABLE 你要查看的表名稱;

我們來運行一下

我來把這個SQL弄出來,然後我們來看一下。

CREATE TABLE `book` (
  `id` int unsigned NOT NULL AUTO_INCREMENT,
  `bookname` varchar(11) DEFAULT NULL,
  `price` decimal(5,2) DEFAULT (0.00),
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

我們可以看到,大致查不多,但是多了一些東西。

ENGINE=InnoDB DEFAULT CHARSET=utf8

這個是什麼東西呢?我來挨個解釋

ENGINE=InnoDB 這個是設置數據引擎的,MySQL之前的版本默認使用的數據引擎都是MyISAM,後來版本就都默認使用InnoDB了,大家先了解一下這個數據引擎,具體內容我們後面去詳細講述。

DEFAULT CHARSET=utf8這個東西是設置字符集,默認我們是使用的utf8,不然我們插入中文的時候會出現亂碼。

三、修改表

修改表名

好比說我們現在不想讓這個表的名字叫book了,我們修改成bookinfo,我們來修改一下,這裏有兩種修改方法

方法1:通過Navicat工具去修改

點擊這個book,然後我們在對象中就能看到了,然後我們點擊到這個表,鼠標右鍵

找到這個重命名就能修改了。

方法二:

我們使用SQL命令進行修改數據庫表明

ALTER TABLE 之前的舊的表名稱 RENMAE 你要修改的新的表名稱;

然後呢,我們來寫一下,順便運行

我們看到,運行成功了,然後我們看一下表

空白地方我們鼠標右鍵,找到刷新,刷新一下就好了。

我們可以看到,已經修改了。

添加字段

我們現在好比要往這個bookinfo中添加一個字段,作者這個字段,我們也有兩種方法

方法1:通過Navicat去修改

我們選擇要修改的這個bookinfo表,然後點擊設計表

然後我們點擊添加字段,然後進行給字段賦值名字,ctrl + s 進行保存,我們也可以使用上移下移進行字段順序的排列,也能刪除字段等等。

方法2:

我們除去使用工具意外,當然也能使用SQL命令去添加字段,命令如下

ALTER TABLE 你要操作的表名 ADD 屬性名 數據類型 約束條件 (FIRST)
上面這個添加屬性是直接添加在表的最前頭

ALTER TABLE 你要操作的表名 ADD 屬性名 數據類型 約束條件 (AFTER 屬性名)
 上面的這個添加屬性,是將這個要添加的屬性放在 AFTER 後面的屬性的後面

我們呢,來使用一下這兩個命令

我們首先往所有字段最前面添加一個字段field 然後字段的數據類型是varchar(11)

可以看到,執行成功了,我們再來看一下表

是吧,在最前頭,我們呢,在這個 feild 後面再添加一個字段,叫 feild 1 ,int類型

也是OK的啊,我們再看看一下表

是OK的,這裏可能有的同學打開發現可能是這樣的

不要慌,你需要關閉這個表,從新打開一下就好。

修改字段

我們現在來修改一下這個feild1 這個字段,我們也有兩種方式

方法1:通過Navicat進行修改,同樣點擊修改表

修改就好,修改完了記得保存就好,我們跟重要的是使用SQL命令去修改

方法二:

廢話不多說,直接上命令!
 

ALTER TABLE 你要修改的表名 CHANGE 舊的屬性名 新的屬性名 新數據類型

然後我們按照格式,我們來修改一哈

這裏必須要填寫新的屬性名和新的數據類型!!!

然後我們看一下這個表

刪除字段

當然了,不要這個字段,我們就能刪除了,我們現在來吧這個test字段給它刪除了,當然方法也有兩種,一個是通過Navicat進行刪除

選中要刪除的字段,點擊刪除,然後保存。

方法二:我們同樣使用SQL語句進行刪除,直接上命令!

ALTER TABLE 你將要刪除的表的名字 DROP 你要刪除的屬性名;

然後我們來寫一下,順道運行一下

也是OK的。

四、刪除表

如果這個表都沒有啥用了,我們呢把它給刪除了,同樣有兩種方法

方法一,通過工具進行刪除。

選擇你要刪除的表,直接點擊刪除

方法二

使用SQL語句進行刪除,直接上命令

DROP TABLE 你要刪除的表名;

我們來運行一下

我們再看一下這個數據庫的表。用一下命令

我們再看一下Navicat

刪除掉了啊。

到這裏爲止,我們創建表就說的差不多了。

 

ps:上方二維碼是我個人的公衆號,最近剛開不久,我每個月都會更新一些活動,希望大家可以積極參加,活動詳情可以關注公衆號之後,回覆“活動”二字進行查看,參加。

大家如果有疑問,可以直接加我QQ:2100363119

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