第二階段 MySQL函數庫

來源:互聯網
上載者:User

標籤:

一位初學php的隨堂筆記,記錄自己的成長!

一.資料庫(DataBase DB)
1.資料庫:儲存資料的倉庫
2.資料庫分類:
(1)關係型資料庫:二維表格儲存體資料(Mysql,SQLServer,Orcale,DB2等)
(2)非關係型資料庫(Nosql):MongDB等
3. Mysql安裝
(1)window:設定檔 my.ini
進入命令列 開始--運行--cmd
(2)Linux:設定檔:/etc/my.cnf
終端
mysql -uroot -p

說明: Mysql 資料庫的儲存位置
/var/lib/mysql
4.Mysql登入
mysql -u使用者名稱 -p密碼 [-P3306]
[-D資料庫名稱]
5.Mysql退出
quit
exit
\q

6.Mysql注釋
-- 注釋
# 注釋

7.修改提示符(Prompt)

(1)進入MySQL的命令
prompt 提示符名稱
(2)登入MySQL寫的命令
mysql -uroot -p --prompt=提示符名稱
說明:
a.恢複提示符 prompt mysql>
b.特殊符號
\h 主機名稱
\D 系統時間日期
\d 選擇資料庫名稱

8. SQL(Structured Query Language)結構化查詢語句
(1)DDL(資料建立語言):建立資料庫,建立表
建立視圖等
CREATE(建立),DROP(刪除),ALTER(修改)
(2)DML(資料操作語言):對資料庫的資料的增,
刪,改
INSERT(添加),DELETE(刪除),UPDATE(改)
(3)DQL(資料查詢語言):對資料庫的資料查詢
SELECT(查詢)
(4)DCL(資料庫控制語言):分配(GRANT)使用者權限
及許可權(REVOKE)撤銷
9.SQL命令列規範
a.系統命令大寫,名稱小寫
b.SQL命令列以分號結束或 \g
說明:結束分隔字元可以用 delimiter 符號名稱
c.SQL命令列支援折行,但不能在函數,名稱,引號中
不能折行
d.SQL命令中的名稱不能用關鍵字和保留字,
如果使用必須用反引號``括起來,例如 `user`
10.建立資料庫(DDL)
(1)查看資料庫
SHOW DATABASES;
(2)建立資料庫
CREATE DATABASE [IF NOT EXISTS]
資料庫名稱 [[DEFAULT] CHARACTER
SET [=] 編碼];
(3)查看建立資料庫命令
SHOW CREATE DATABASE 資料庫名稱;
(4)刪除資料庫
DROP DATABASE [IF EXISTS] 資料庫名稱;
(5)修改資料庫的編碼
ALTER DATABASE 資料庫名稱
[DEFAULT] CHARACTER SET [=]編碼;
(6)選擇資料庫
USE 資料庫名稱;
(7) 查看當前選擇的資料庫
SELECT DATABASE();

11.建立資料庫中的表
(1) 查看錶
SHOW TABLES;
(2)建立表結構
CREATE TABLE [IF NOT EXISTS] 表名(
欄位(Field)名稱|列名稱 資料類型 [欄位屬性|約束條件],
欄位(Field)名稱|列名稱 資料類型 [欄位屬性|約束條件]
...
)[ENGINE=InnoDB DEFAULT CHARSET=utf8];
說明:資料庫最小單位是表,一定是先有表結構
再添加資料
(3)查看錶結構
DESC 表名;
DESCRIBE 表名;
SHOW COLUMNS FROM 表名;
(4)查看建立表結構命令
SHOW CREATE TABLE 表名;

12. 資料操作(DML DQL)
(1)插入資料
INSERT 表名(欄位1,欄位2...)
VALUE[S]
(值,值...),
(值,值...)...;
(2)查詢資料:
SELECT * FROM 表名;
SELECT 欄位1,欄位2,... FROM 表名;

13.MySQL資料類型
(1)整型
TINYINT([M]) [UNSIGNED|ZEROFILL]:
範圍:大小1位元組(Byte 2^8)
有符號位 -128~127
無符號 0~255
SMALLINT([M]) [UNSIGNED|ZEROFILL]:
範圍:大小2位元組(Byte 2^16)
有符號位 -32768~32767
無符號 0~65535
MEDIUMINT([M]) [UNSIGNED|ZEROFILL]:
範圍:大小3位元組(Byte 2^24)
有符號位 -8388608~8388607
無符號 0~16777215
INT([M]) [UNSIGNED|ZEROFILL]:
範圍:大小4位元組(Byte 2^32)
有符號位 -2147483648~2147483647
無符號 0~4294967295
BIGINT([M]) [UNSIGNED|ZEROFILL]:
範圍:大小8位元組(Byte 2^64)
說明:
欄位屬性:
UNSIGNED:無符號位(正數)
ZEROFILL: 當顯示的長度小於指定長度
用 0填補,會自動添加UNSIGNED

(2)浮點
a.單精確度浮點
FLOAT([M,D]) [UNSIGNED|ZEROFILL]
範圍:
-3.40e38 ~3.40e38
b.雙精確度浮點
DOUBLE([M,D]) [UNSIGNED|ZEROFILL]
-1.79e308 ~1.79e308
c.定長浮點
DECIMAL([M,D])[UNSIGNED|ZEROFILL]

說明:
當指定D小點位元,FLOAT,DOUBLE超出
指定位元會四捨五入存近似值,
DECIMAL超出指定位元,包警告錯誤
DECIMAL存精確值

(3)字元型
a.CHAR([M]): 定長字元(0-255位元組 一個字母佔一個位元組)
b.VARCHAR([M]):變長字元(0-65535位元組)
VARCHAR儲存長度受下面情況影響:
(a)一個欄位最大65535位元組
(b)編碼
gbk:至多佔2個位元組
utf8:至多佔3個位元組 65532/3 =21844
(c)多個字元型欄位中總的長度不能超過
65535(21844)
c.TINYTEXT: 0-255位元組
d.TEXT:0-65535位元組
e.MEDIUMTEXT:0-16777215位元組
f.LONGTEXT:0-4294967295位元組

說明: CHAR效率高但不省空間,VARCHAR
效率低但省空間,TEXT效率最低

(4)布爾型
BOOLEAN
TINYINT(1)

(5)枚舉類型
ENUM:範圍:0-65535位元組
例如:
sex ENUM(‘man‘,‘woman‘,‘secret‘);

14.約束條件(1)

NOT NULL:不為空白
DEFAULT:預設值
[PRIMARY] KEY:主鍵,一個表中只能有
一個主鍵,並且是主鍵的欄位一定
自動添加 NOT NULL 和不重複(UNIQUE)
UNIQUE [KEY]:不重複,一個表中可以有多個
不重複(例如:使用者名稱不重複,郵箱不重複)
AUTO_INCREMENT:自動成長,欄位如果是編號當添加
記錄(行)時,編號自增,並且
AUTO_INCREMENT的欄位一定是主鍵








第二階段 MySQL函數庫

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.