什么是SQL
Structured Query Language 簡稱SQL,結(jié)構(gòu)化查詢語言,數(shù)據(jù)庫管理系統(tǒng)通過SQL語言來管理數(shù)據(jù)庫中的數(shù)據(jù)
SQL語言的組成部分
- ==DDL==:
Data Defination Language,數(shù)據(jù)定義語言,主要用于定義數(shù)據(jù)庫,表,視圖,索引和觸發(fā)器等,像DROP,CREATE,ALTER等語句。 - ==DML==:
Data Manipulation Language,主要包括數(shù)據(jù)庫的增刪改,INSERT插入數(shù)據(jù),UPDATE更新數(shù)據(jù),DELETE刪除數(shù)據(jù)。 - ==DQL==:
Data Query Language,數(shù)據(jù)檢索語句,用來從表中獲取數(shù)據(jù),確定數(shù)據(jù)怎樣在應(yīng)用程序中給出,像SELECT查詢數(shù)據(jù)。 - ==DCL==:
Data Control Language,數(shù)據(jù)控制語言,主要用于控制用戶的訪問權(quán)限,像GRANT,REVOKE,COMMIT,ROLLBACK等語句。
登錄
登錄Mysql我們可以使用終端命令
mysql -uroot -p
如果mysql的服務(wù)器不在本地,可以用==-h==和==-p==來表示地址和端口進(jìn)行登錄。
mysql -h10.10.10.250 -p3306 -uroot -p
然后按照提示輸入密碼即可。如果顯示

則表示登錄成功!
修改mysql的命令提示符
當(dāng)連接上數(shù)據(jù)庫后用,prompt提示符來修改命令提示符
- \h 表示當(dāng)前的服務(wù)器
- \u 表示當(dāng)前的用戶
- \D 表示當(dāng)前的日期
- \d 表示當(dāng)前的數(shù)據(jù)庫
如果修改成功之后則會顯示:

修改命令結(jié)束符
mysql默認(rèn)的結(jié)束符是==;==,如果想要自定義就需要用
DELIMITER指令去修改成想要的結(jié)束符。
舉例:使用//取代;作為結(jié)束符,我們可以敲如下指令
DELIMITER //
數(shù)據(jù)庫操作
創(chuàng)建一個數(shù)據(jù)庫
格式為:
CREATE DATABSE
數(shù)據(jù)庫名;
CREATE DATABSE IF NOT EXISTS數(shù)據(jù)庫名;
顯示所有的數(shù)據(jù)庫
SHOW DATABASES;
打開指定的數(shù)據(jù)庫
USE
數(shù)據(jù)庫名稱
刪除指定數(shù)據(jù)庫
DROP DATABASE IF EXISTS
數(shù)據(jù)庫名稱
表操作
創(chuàng)建一個表
CREATE TABLE IF NOT EXISTS
表名
舉例:創(chuàng)建一個用戶表
CREATE TABLE IF NOT EXISTS `user`(
id SMALLINT,
username VARCHAR(20),
age TINYINT,
sex VARCHAR(5),
age TINYINT,
email VARCHAR(50),
addr VARCHAR(200),
brith YEAR,
salary FLOAT(8,2),
tel INT,
married TINYINT(1)
)
MySQL 數(shù)據(jù)類型
數(shù)值類型

日期和時間類型

字符串類型

刪除數(shù)據(jù)表
DROP TABLE table_name;
插入數(shù)據(jù)
INSERT INTO table_name ( field1, field2,...fieldN )
VALUES
( value1, value2,...valueN );
例如:
INSERT INTO cms_cate(
id,
cateName,
cateDesc
) VALUES (
1,"這個新聞?wù)娴暮?,"沒說什么好,反正就是好!"
);
刪除數(shù)據(jù)
DELETE FROM table_name [WHERE Clause]
例如:
DELETE FROM cms_cate WHERE id=1;
修改數(shù)據(jù)
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
例如:
UPDATE cms_cate SET cateName="這個新聞有問題" WHERE id=1;
查詢數(shù)據(jù)
SELECT column_name,column_name
FROM table_name
[WHERE Clause]
[LIMIT N][ OFFSET M]
- 查詢語句中你可以使用一個或者多個表,表之間使用逗號(,)分割,并使用WHERE語句來設(shè)定查詢條件。
- SELECT 命令可以讀取一條或者多條記錄。
- 你可以使用星號(*)來代替其他字段,SELECT語句會返回表的所有字段數(shù)據(jù)。
- 你可以使用 WHERE 語句來包含任何條件。
- 你可以使用 LIMIT 屬性來設(shè)定返回的記錄數(shù)。
- 你可以通過OFFSET指定SELECT語句開始查詢的數(shù)據(jù)偏移量。默認(rèn)情況下偏移量為0。
查看表信息
DESC 表名;
查看創(chuàng)建表的標(biāo)的定義
SHOW CREATE TABLE 表名;