mysql數(shù)據(jù)庫迅速基礎(chǔ)基礎(chǔ)學習(經(jīng)典圖文詳細教程)
發(fā)表時間:2023-07-16 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]本文是學習mysql數(shù)據(jù)庫的基礎(chǔ)入門知識,包括常用的操作命令,學習mysql數(shù)據(jù)庫這些知識點是必須要掌握的,收藏下來有備無患,首先開始接受啟動MySQL服務(wù),然后連接MySQL數(shù)據(jù)庫有兩種方式方式1...
本文是學習mysql數(shù)據(jù)庫的基礎(chǔ)入門知識,包括常用的操作命令,學習mysql數(shù)據(jù)庫這些知識點是必須要掌握的,收藏下來有備無患,首先開始接受啟動MySQL服務(wù),然后連接MySQL數(shù)據(jù)庫有兩種方式方式1:進入MySQL命令行, 在命令行中輸入密碼; 方式2:在運行窗口中;下文有詳細講解。
如何啟動MySQL服務(wù)?
對于如何啟動MySQL服務(wù)?除了可以在安裝的時候勾選隨著開機自啟動,還可以在運行
窗口(windows)為例子,輸入以下內(nèi)容:
net start 命令名字:開啟一個服務(wù),如:net start MySQL
net stop 命令名字:關(guān)閉一個服務(wù)器,如:net stop MySQL
連接MySQL數(shù)據(jù)庫有兩種方式:
方式1:進入MySQL命令行, 在命令行中輸入密碼;
方式2:在運行窗口中:
格式:mysql -u賬戶 -p密碼 -h數(shù)據(jù)庫服務(wù)器安裝的主機的ip(如果是本機可以使用localhost) -P數(shù)據(jù)庫端口
mysql -uroot -padmin -h127.0.0.1 -P3306
上面假設(shè)我的賬號是root 密碼是admin
若連接的數(shù)據(jù)庫服務(wù)器在本機上,并且端口是3306。
則可以簡寫: mysql -uroot -padmin
Navicat for MySQL
Navicat for MySQL[1] 其實就是MySQL 的可視化工具,是一款強大的 MySQL 數(shù)據(jù)庫管理和開發(fā)工具,它為專業(yè)開發(fā)者提供了一套強大的足夠尖端的工具,但對于新用戶仍然易于學習。Navicat for MySQL 基于Windows平臺,為 MySQL 量身訂作,提供類似于 MySQL 的用管理界面工具。此解決方案的出現(xiàn),將解放 PHP、J2EE 等程序員以及數(shù)據(jù)庫設(shè)計者、管理者的大腦,降低開發(fā)成本,為用戶帶來更高的開發(fā)效率。
數(shù)據(jù)庫操作和存儲引擎
數(shù)據(jù)庫對象:存儲,管理和使用數(shù)據(jù)的不同結(jié)構(gòu)形式,如:表、視圖、存儲過程、函數(shù)、觸發(fā)器、事件、索引等。
數(shù)據(jù)庫:存儲數(shù)據(jù)庫對象的容器。
數(shù)據(jù)庫分兩種:
1):系統(tǒng)數(shù)據(jù)庫(系統(tǒng)自帶的數(shù)據(jù)庫):不能修改
information_schema:存儲數(shù)據(jù)庫對象信息,如:用戶表信息,列信息,權(quán)限,字符,分區(qū)等信息。
performance_schema:存儲數(shù)據(jù)庫服務(wù)器性能參數(shù)信息。
mysql:存儲數(shù)據(jù)庫用戶權(quán)限信息。
test:任何用戶都可以使用的測試數(shù)據(jù)庫。
2):用戶數(shù)據(jù)庫(用戶自定義的數(shù)據(jù)庫):一般的,一個項目一個用戶數(shù)據(jù)庫。
常用的操作命令:
查看數(shù)據(jù)庫服務(wù)器存在哪些數(shù)據(jù)庫:
SHOW DATABASES;
使用指定的數(shù)據(jù)庫:
USE database_name;
查看指定的數(shù)據(jù)庫中有哪些數(shù)據(jù)表:
SHOW TABLES;
創(chuàng)建指定名稱的數(shù)據(jù)庫:
CREATE DATABASE database_name;
刪除數(shù)據(jù)庫:
DROP DATABASE database_name;
注意:;是必須的,不然不會正確顯示
MySQL的存儲引擎
MySQL中的數(shù)據(jù)用各種不同的技術(shù)存儲在文件(或者內(nèi)存)中。這些技術(shù)中的每一種技術(shù)都使用不同的存儲機制、索引技巧、鎖定水平并且最終提供不同的功能和能力。
通過選擇不同的技術(shù),你能夠獲得額外的速度或者功能,從而改善你的應(yīng)用的整體功能。
MyISAM:擁有較高的插入,查詢速度,但不支持事務(wù),不支持外鍵。
InnoDB:支持事務(wù),支持外鍵,支持行級鎖定,性能較低。
InnoDB 存儲引擎提供了具有提交、回滾和崩潰恢復(fù)能力的事務(wù)安全。但對比MyISAM,處理效率差,且會占用更多的磁盤空間以保留數(shù)據(jù)和索引。
MySQL常用列類型
最常用的整數(shù)類型:
MySQL列類型 Java數(shù)據(jù)類型
INT/INTEGER: int/Integer
BIGINT: long/Long
MySQL 以一個可選的顯示寬度指示器的形式對 SQL 標準進行擴展,這樣當從數(shù)據(jù)庫檢索一個值時,可以把這個值加長到指定的長度。
例如,指定一個字段的類型為 INT(6),就可以保證所包含數(shù)字少于 6 個的值從數(shù)據(jù)庫中檢索出來時能夠自動地用空格填充。
需要注意的是,使用一個寬度指示器不會影響字段的大小和它可以存儲的值的范圍。一般不用指定位寬。
age int(2),并不是代表age最多存儲99,而是指查詢age值得時候使用兩個0來占位.
FLOAT[(s,p)] :
DOUBLE[(s,p)] : 小數(shù)類型,可存放實型和整型 ,精度(p)和范圍(s)
money double(5,2): 整數(shù)和小數(shù)一共占5位.其中小數(shù)占2位,最大值:999.99,最小-999.99.
都不夠精確。
定點數(shù)據(jù)類型: DECIMAL,高精度類型,金額貨幣優(yōu)先選擇。
MySQL列類型 Java數(shù)據(jù)類型
FLOAT float/Float
DOUBLE double/Double
DECIMAL BigDecimal
char(size) 定長字符,0 - 255字節(jié),size指N個字符數(shù),若插入字符數(shù)超過設(shè)定長度,會被截取并警告。
varchar(size) 變長字符,0 - 255字節(jié),從MySQL5開始支持65535個字節(jié),若插入字符數(shù)超過設(shè)定長度,會被截取并警告。
一般存儲大量的字符串,比如文章的純文本,可以選用TEXT系列類型。
注意:在MySQL中,字符使用單引號引起來。 相當于Java中字符串(String,StringBuilder/StringBuffer);
日期和時間類型為DATETIME、DATE、TIMESTAMP、TIME和YEAR。
注意:在MySQL中,日期時間值使用單引號引起來。 相當于Java中Date,Calender。
BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB:
存放圖形、聲音和影像,二進制對象,0-4GB。
但是,在開發(fā)中,我們一般存儲二進制文件保存路徑的路徑存儲在數(shù)據(jù)庫中。
BIT:我們一般存儲0或1,存儲是Java中的boolean/Boolean類型的值。
表的操作
1.先進入某一個數(shù)據(jù)庫.(使用USE database_name;命令)
2.輸入建表的命令:
CREATE TABLE 表名(
列名1 列的類型 [約束],
列名2 列的類型 [約束],
….
列名N 列的類型 約束
);
注意:最后一行沒有逗號
若在建表中使用到了數(shù)據(jù)庫的關(guān)鍵字.
比如新建一張訂單表:(order),但是order是數(shù)據(jù)庫中的關(guān)鍵字(排序使用).
表名:t_order,若費用使用order這個單詞.此時使用反引號()括起來,
order`.
一般,起表名為:t_名字。
例子:創(chuàng)建一張表
創(chuàng)建一張學生信息表,記錄學生的id,name,age.CREATE TABLE `t_student`( `id ` bigint, `name ` varchar(20), ` age ` int);
查看表結(jié)構(gòu):
DESC table_name;
查看表的詳細定義(顯示表的定義SQL語句):
SHOW CREATE TABLE table_name;
刪除表:
DROP TABLE table_name;
表的約束(針對于某一列):
1.非空約束:NOT NULL,不允許某列的內(nèi)容為空。
2.設(shè)置列的默認值:DEFAULT。
3.唯一約束:UNIQUE,在該表中,該列的內(nèi)容必須唯一。
4.主鍵約束:PRIMARY KEY, 非空且唯一。
5.主鍵自增長:AUTO_INCREMENT,從1開始,步長為1。
6.外鍵約束:FOREIGN KEY,A表中的外鍵列. A表中的外鍵列的值必須參照于B表中的某一列(B表主鍵)。
主鍵設(shè)計,唯一標識某一行數(shù)據(jù)的:
1:單字段主鍵,單列作為主鍵,建議使用。
復(fù)合主鍵,使用多列充當主鍵,不建議。
2:主鍵分為兩種:
1).自然主鍵:使用有業(yè)務(wù)含義的列作為主鍵(不推薦使用),比如身份證號碼;
2).代理主鍵:使用沒有業(yè)務(wù)含義的列作為主鍵(推薦使用);
相關(guān)文章:
mysql 基礎(chǔ)命令入門學習_MySQL
mysql數(shù)據(jù)庫學習筆記之常用操作命令_MySQL
相關(guān)視頻:
數(shù)據(jù)庫mysql視頻教程
以上就是mysql數(shù)據(jù)庫快速入門基礎(chǔ)學習(經(jīng)典教程)的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
學習教程快速掌握從入門到精通的SQL知識。