<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
MySQL 是最常用的資料庫,在資料庫操作中,基本都是增刪改查操作,簡稱CRUD。
在這之前,需要先安裝好 MySQL ,然後建立好資料庫、資料表、操作使用者。
資料庫在操作時,需要使用專門的資料庫操作規則和語法,這個語法就是 SQL(Structured Query Language) 結構化查詢語言。
SQL 的主要功能是和資料庫建立連線,進行增刪改查的操作。SQL是關係型資料庫管理系統的標準語言。
SQL 語言的作用:
1. 資料定義語言 DDL(Data Definition Language) 。用於建立資料庫,資料表。
2. 資料操作語言 DML(Data Manipulation Language) 。用於從資料表中插入、修改、刪除資料。
3. 資料查詢語言 DQL(Data Query Language) 。用於從資料表中查詢資料。
4. 資料控制語言 DCL(Data Control Language) 。用來設定或修改資料庫使用者或角色的許可權。
使用 SQL 運算元據庫時,所有的 SQL 語句都以分號結束。(切換資料庫時可以不用分號)
在 SQL 語句中,不區分大小寫,編寫 SQL 語句時可以根據情況用大小寫的區別來增加可讀性。
1. 連線 MySQL
輸入 mysql -u root -p 命令,回車,然後輸入 MySQL 的密碼(不要忘記了密碼),再回車,就連線上 MySQL 了。
mysql -u root -p
最初,都是使用 root 使用者登入,工作中如果一直用 root 使用者登入,因為許可權太大,風險是很大的,所以等建立好許可權適合的使用者後,就不要經常登入 root 使用者了。
2. 檢視當前的資料庫
使用 show databases; 檢視當前安裝的 MySQL 中有哪些資料庫。
show databases;
剛安裝 MySQL 時,預設有四個資料庫,information_schema,mysql,perfomance_schema,sys 。通常情況下,我們不會直接使用這四個資料庫,但千萬不要把這四個資料庫刪了,否則會帶來很多不必要的麻煩。如果不小心刪了,建議是重新安裝 MySQL ,在重灌之前把自己的資料遷移出來備份好,或者從其他伺服器上遷移一個相同的資料庫過來。
3. 建立資料庫
使用 create database 資料庫名; 建立資料庫。
create database MyDB_one;
建立資料庫成功後,資料庫的數量變成了5個,多了剛才建立的 MyDB_one 。
4. 建立資料庫時設定字元編碼
使用 create database 資料庫名 character set utf8; 建立資料庫並設定資料庫的字元編碼。
create database MyDB_two character set utf8;
直接建立的資料庫,資料庫的編碼方式是 MySQL 預設的編碼方式 latin1 (單位元組編碼) ,通常我們會在資料庫中存放中文資料,所以最好把資料庫的編碼方式設定成 utf-8 ,這樣中文才能正常顯示。
create database MyDB_three charset utf8;
character set 可以縮寫成 charset ,效果是一樣的。
5. 檢視和顯示資料庫的編碼方式
使用 show create database 資料庫名; 顯示資料庫的建立資訊。
show create database MyDB_one; show create database MyDB_two;
如果不知道一個資料庫的編碼方式是什麼,可以使用 show create database 資料庫名 來檢視資料庫的編碼方式。可以看到剛才建立的 MyDB_one 的編碼方式是 MySQL 的預設編碼 latin1 ,MyDB_two 的編碼方式是 utf-8 。
當然,這種方式不能在建立的同時顯示,只能檢視一個已經存在的資料庫的編碼方式。
6. 使用 alter database 資料庫名 character set utf8; 修改資料庫編碼
alter database MyDB_one character set utf8;
如果一個資料庫的編碼方式不符合使用需求,可以進行修改。剛才建立的 MyDB_one 經過修改後,編碼方式也變成了 utf-8 。
7. 進入或切換資料庫
使用 use 資料庫名 進入或切換資料庫。
use MyDB_one use MyDB_two;
剛連線上 MySQL 時,沒有處於任何一個資料庫中,如果要使用某一個資料庫,就需要進入到這個資料庫中。
use 資料庫名 這個命令後面的分號可以省略,這是 SQL 語句中唯一可以省略分號的語句。
8. 顯示當前資料庫 select database();
select database();
進入資料庫中,可以使用 select database(); 來檢視當前處於哪個資料庫中。長時間運算元據庫時,在很多資料庫中來回切換後,檢視當前的資料庫,避免操作錯了資料庫。
1. 檢視當前資料庫中的表
使用 show tables;檢視當前資料庫中有哪些表。
show tables;
在剛才建立的資料庫 MyDB_one 中,還沒有建立任何表,所以當前是空的。
2. 建立表
使用 create table 表名(欄位1 欄位型別,欄位2 欄位型別,欄位3 欄位型別,…); 來建立一張表。
create table Phone_table(pid INT, name CHAR(20), price INT);
在 MyDB_one 中建立了一個叫 Phone_table 的資料表,這張表有三個欄位 pid,name,price 。為了增加 SQL 的可讀性,欄位名我用的是小寫,欄位型別用大寫。
3. 顯示錶資訊
用 show create table 表名; 來顯示已建立的表的資訊。
show create table Phone_table;
使用 show create table 表名; 可以顯示錶的欄位資訊, MySQL 的引擎,和預設的字元編碼等資訊。與顯示資料庫資訊一樣,show 只能顯示已經建立了的資料表的資訊,不能在建立的同時顯示資訊。
如果想更好地展示表的欄位資訊,可以使用 desc 表名; 來顯示錶的欄位資訊。
4. 給表增加欄位
使用 alter table 表名 add 欄位名 資料型別; 為已存在的表新增一個新欄位。
alter table Phone_table add color CHAR(20);
新增後,剛才的表中多了一個欄位,新增成功。
5. 刪除表的欄位
使用 alter table 表名 drop 欄位名; 刪除一個表中已存在的欄位。
alter table Phone_table drop price;
刪除欄位後,表中不再有該欄位。
6. 修改欄位的資料型別
使用 alter table 表名 modify 欄位名 資料型別; 修改表中現有欄位的資料型別。
alter table Phone_table modify name VARCHAR(12);
修改之後,該欄位的資料型別發生改變。
7. 修改欄位的資料型別並且改名
使用 alter table 表名 change 原欄位名 新欄位名 資料型別; 修改表中現有欄位的欄位名和型別。
alter table Phone_table change name pname CHAR(18);
現在,將表的 name 改成了 pname ,同時修改了 pname 的資料型別。
一個資料表是由若干個欄位組成的,一個表十幾個欄位也很正常,每個欄位表示不同的資訊,需要使用不同型別的資料。
所以在建立表的時候,要為每個欄位指定適合的資料型別。
MySQL 中常用的欄位型別有以下這些:
1. 整數型別
資料型別 | 資料範圍 |
TINYINT | -128 -- 127 |
SMALLINT | -32768 -- 32767 |
MEDIUMINT | -2^23 -- 2^23-1 |
INT | -2^31 -- 2^31-1 |
BIGINT | -2^63 -- 2^63-1 |
2. 字串型別
資料型別 | 位元組範圍 | 用途 |
CHAR(n) | 0 -- 255位元組 | 定長字串 |
VARCHAR(n) | 0 -- 65535位元組 | 變長字串 |
TEXT | 0 -- 65535位元組 | 長文字資料 |
LONGTEXT | 0 -- 2^32-1位元組 | 極大文字資料 |
BLOB | 0 -- 65535位元組 | 二進位制長文字資料 |
LONGBLOB | 0 -- 2^32-1位元組 | 二進位制極大文字資料 |
3. 小數型別
m 表示浮點數的總長度,n 表示小數點後有效位數。
資料型別 | 資料用法 | 資料範圍 |
Float | Float(m,n) | 7位有效數 |
Double | Double(m,n) | 15位有效數 |
Decimal | Decimal(m,n) | 28位元有效數 |
4. 時間型別
資料型別 | 格式 | 用途 |
DATE | YYYY-MM-DD | 日期 |
TIME | HH:MM:SS | 時間 |
YEAR | YYYY | 年份 |
DATETIME | YYYY-MM-DD HH:MM:SS | 日期和時間 |
TIMESTAMP | 10位或13位整數(秒數) | 時間戳 |
5. 列舉型別
enum(列舉值1,列舉值2,...)
列舉型別只能在列出的值中選擇一個,如性別。
到此這篇關於MySQL建立資料庫和建立資料表的文章就介紹到這了,更多相關資料庫和資料表的建立內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45