首頁 >資料庫 >mysql教程 >mysql資料庫快速入門基礎學習(經典教學)

mysql資料庫快速入門基礎學習(經典教學)

php是最好的语言
php是最好的语言原創
2018-08-04 15:08:234028瀏覽

本文是學習mysql資料庫的基礎入門知識,包括常用的操作指令,學習mysql資料庫這些知識點是必須要掌握的,收藏下來有備無患,首先開始接受啟動MySQL服務,然後連接MySQL資料庫有兩種方式方式1:進入MySQL命令列, 在命令列中輸入密碼; 方式2:在運行視窗中;下文有詳細講解。

如何啟動MySQL服務?

對於如何啟動MySQL服務?除了可以在安裝的時候勾選隨著開機自啟動,還可以在執行 

視窗(windows)為例子,輸入以下內容:

net start 指令名稱:開啟一個服務,如:net start MySQL
net stop  指令名字:關閉一個伺服器,如:net stop MySQL

mysql資料庫快速入門基礎學習(經典教學)

連接MySQL資料庫有兩種方式:

方式1:進入MySQL命令列, 在命令列中輸入密碼; 
方式2:在運行視窗中:
格式:mysql -u帳號-p密碼-h資料庫伺服器安裝的主機的ip(如果是本機可以使用localhost) -P資料庫連接埠
mysql -uroot -padmin -h127.0.0.1 -P3306
上面假設我的帳號是root 密碼是admin
若連接的資料庫伺服器在本機上,且連接埠是3306。
則可以簡單寫: mysql -uroot -padmin

Navicat for MySQL

Navicat for MySQL[1] 其實是MySQL 的視覺化工具,是一款強大的MySQL 資料庫管理和開發工具,它為專業開發者提供了一套強大的足夠尖端的工具,但對於新用戶仍然易於學習。 Navicat for MySQL 是基於Windows平台,為 MySQL 量身訂作,提供類似 MySQL 的用管理介面工具。此解決方案的出現,將解放 PHP、J2EE 等程式設計師以及資料庫設計者、管理者的大腦,降低開發成本,為使用者帶來更高的開發效率。

資料庫操作和儲存引擎

資料庫物件:存儲,管理和使用資料的不同結構形式,如:表格、視圖、預存程序、函數、觸發器、事件、索引等。

資料庫:儲存資料庫物件的容器。

資料庫分兩種:
  1):系統資料庫(系統自帶的資料庫):不能修改
       information_schema:儲存資料庫物件信息,如:使用者表信息,列信息,權限,字符,分區等資訊。
       performance_schema:儲存資料庫伺服器效能參數資訊。
       mysql:儲存資料庫使用者權限資訊。
       test:任何使用者都可以使用的測試資料庫。

2):使用者資料庫(使用者自訂的資料庫):一般的,一個專案一個使用者資料庫。

常用的操作指令:

檢視資料庫伺服器有哪些資料庫:
SHOW  DATABASES;
使用指定的資料庫:
USE database_name;
查看指定名稱的資料庫中有哪些資料表:  
SHOW TABLES;
建立指定名稱的資料庫:
CREATE DATABASE database_name;
刪除資料庫:
DROP DATABASE database_name;

注意:;是必須的,否則不會正確顯示

MySQL的儲存引擎

MySQL中的資料以各種不同的技術儲存在文件(或記憶體)中。這些技術中的每一種技術都使用不同的儲存機制、索引技巧、鎖定水平並且最終提供不同的功能和能力。
透過選擇不同的技術,你能夠獲得額外的速度或功能,從而改善你的應用的整體功能。

MyISAM:擁有較高的插入,查詢速度,但不支援事務,不支援外鍵。
InnoDB:支援事務,支援外鍵,支援行級鎖定,效能較低。

InnoDB 儲存引擎提供了具有提交、回溯和崩潰復原能力的事務安全性。但比較MyISAM,處理效率差,且會佔用更多的磁碟空間以保留資料和索引。

MySQL常用欄位類型

##最常用的整數型別:

MySQL 欄位類型                 Java BIGINT:                                    long/Long

MySQL 以一個可選的顯示寬度指示器的形式對 SQL 標準進行擴展,這樣當從資料庫檢索一個值時,可以把這個值加長到指定的長度。
例如,指定一個欄位的類型為 INT(6),就可以保證所包含數字少於 6 個的值從資料庫中檢索出來時能夠自動地用空格填充。
要注意的是,使用一個寬度指示器不會影響欄位的大小和它可以儲存的值的範圍。一般不用指定位寬。
age  int(2),並不是代表age最多儲存99,而是指查詢age值得時候使用兩個0來佔位.

mysql資料庫快速入門基礎學習(經典教學)

mysql資料庫快速入門基礎學習(經典教學)

FLOAT[(s,p)]   :
DOUBLE[(s,p)]  : 小數型,可存放實型與整數,精確度(p)與範圍(s)
                 money double(5,2): 整數與小數一共佔5位.其中小數佔2位,最大值:999.99,最小-999.99.
                 都不夠精確。
定點資料類型: DECIMAL,高精度類型,金額貨幣優先選擇。

MySQL欄位類型              Java資料類型
FLOAT                      ##DECIMAL                   BigDecimal

mysql資料庫快速入門基礎學習(經典教學)char(size)定長字符,0 - 255位元組,size指N個字符數,若插入字符數超過設定長度,會被截取並警告。

varchar(size)        變長字符,0 - 255字節,從MySQL5開始支援65535個位元組,若插入字元數超過設定長度,會被截取並警告。

一般儲存大量的字串,例如文章的純文本,可以選用TEXT系列類型。
注意:在MySQL中,字元使用單引號引起來。相當於Java中字串(String,StringBuilder/StringBuffer);

mysql資料庫快速入門基礎學習(經典教學)

mysql資料庫快速入門基礎學習(經典教學)#日期、時間類型為DATETIME、DATE、TIMESTAMP、TIME和YEAR。

注意:在MySQL中,日期時間值使用單引號引起來。相當於Java中Date,Calender。


mysql資料庫快速入門基礎學習(經典教學)BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB:

存放圖形、聲音和影像,二進位對象,0-4GB。

但是,在開發中,我們一般儲存二進位檔案保存路徑的路徑儲存在資料庫中。
BIT:我們一般儲存0或1,儲存是Java中的boolean/Boolean類型的值。

表的操作

1.先進入某一個資料庫.(使用USE database_name;指令)

2.輸入建表的指令:

CREATE TABLE 表名(
  列名1    列的型別   [約束],
  列名2    列的型別   [約束],
  ….
列名N    列的類型  約束
);
注意:最後一行沒有逗號

若在建表中使用到了資料庫的關鍵字.

例如新建一張訂單表:( order),但是order是資料庫中的關鍵字(排序使用).

表名:t_order,若費用使用order這個字.此時使用反引號(
)括起來,
order`. 一般,起表名為:t_名字。
範例: 建立一張表格

创建一张学生信息表,记录学生的id,name,age.CREATE  TABLE   `t_student`(         `id `         bigint,         `name `  varchar(20),         ` age `     int);

檢視表格結構:

DESC table_name;

檢視表格的詳細定義(顯示表格的定義SQL語句):
SHOW CREATE TABLE table_name;
刪除表:
DROP TABLE table_name;

表的約束(針對於某一列):

#1.非空約束:NOT NULL,不允許某一列的內容為空。

2.設定列的預設值:DEFAULT。

3.唯一約束:UNIQUE,在該表中,該列的內容必須唯一。
4.主鍵約束:PRIMARY KEY, 非空且唯一。
5.主鍵自增長:AUTO_INCREMENT,從1開始,步長為1。
6.外鍵約束:FOREIGN KEY,A表中的外鍵列.A表中的外鍵列的值必須參考於B表中的某一列(B表主鍵)。

主鍵設計,唯一標識某一行資料的:
1:單一欄位主鍵,單列作為主鍵,建議使用。
     複合主鍵,使用多列充當主鍵,不建議。
2:主鍵分為兩種:
  1).自然主鍵:使用有業務意義的欄位作為主鍵(不建議使用),例如身分證號碼;
2).代理主鍵:使用沒有業務意義的列作為主鍵(建議使用);

mysql資料庫快速入門基礎學習(經典教學)

#相關文章:

mysql 基礎指令入門學習_MySQL

mysql資料庫學習筆記之常用操作指令_MySQL

相關影片:

資料庫mysql影片教學

以上是mysql資料庫快速入門基礎學習(經典教學)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn