一.(四字訣:增刪改查)
置頂:
- win7系統(tǒng)安裝mysql8.0.11壓縮包版本完美教程
https://blog.csdn.net/qq_42152399/article/details/80360428
2.顯示所有數(shù)據(jù)庫
SHOW DATABASES;
3.創(chuàng)建數(shù)據(jù)庫
CREATE DATABASE two;
(注意:在DOS窗口中,編譯過程中沒有錯誤提示,就算慢一點也盡量不要敲錯)
4.刪除數(shù)據(jù)庫
DROP DATABASE 數(shù)據(jù)庫名;
5.查詢mysql數(shù)據(jù)庫支持的存儲引擎類型
SHOW ENGINES ;
SHOW VARIABLES LIKE ‘HAVE%’;
6.使用數(shù)據(jù)庫:
USE 數(shù)據(jù)庫名;
7.創(chuàng)建表
CREATE TABLE 表名(屬性名 數(shù)據(jù)類型 [完整性約束條件]);
8.完整性約束條件
PRIMARY KEY: 主鍵
AUTO_INCREMENT : 自增長\一個表只能有一個字段使用
FOREIGN KEY : 外鍵
NOT NULL : 非空
UNIQUE : 唯一
DEFAULT : 默認值
9.主鍵的設(shè)置
屬性名 數(shù)據(jù)類型 PRIMARY KEY;
10.主鍵的唯一性:
表中任意兩條記錄的主鍵字段的值不能相同
11.多字段主鍵的設(shè)置
PRIMAYR KEY (屬性名,…);
12.外鍵
CONSTRAINT 外鍵別名 FOREING KEY(屬性1,…) \子表中外鍵
REFERENCES 表名(屬性2,…) \父表中主鍵
13.設(shè)置表的屬性的默認值(填充空字段)
屬性名 數(shù)據(jù)類型 DEFAULT 默認值(創(chuàng)表時使用)
14.查看表的基本定義
DESCRIBE 表名;
DESC 表名;
15.查看表的詳細結(jié)構(gòu)
SHOW CREATE TABLE 表名;
SHOW CREATE TABLE 表名\G
16.\G的優(yōu)勢
17.檢查表所有字段
SELECT*FROM USER;
18、插入數(shù)據(jù):
INSERT INTO 表名VALUES(123456);
19.刪除表
DROP TABLE 表名;
20.查看數(shù)據(jù)庫所有表
SHOW TABLES;
21.數(shù)據(jù)類型中CHAR 與VARCHAR的區(qū)別
CHAR定義長度即占用
VARCHAR用到多少分配多少(最大為定義長度)
22.只插入指定列數(shù)據(jù)
insert into 表名(列名)values(數(shù)據(jù));
23.在已建成表中為列添加唯一約束或主鍵約束:
alter table 表名 add constraint 約束(列名);
注:若表中數(shù)據(jù)已經(jīng)存在與要加的約束沖突的屬性,則約束無法添加
24.為MySQL表中某一列添加默認值
已有test表,表中有個case_status字段,現(xiàn)在給該字段設(shè)置默認值為A:
ALTER TABLE test ALTER COLUMN case_status SET DEFAULT 'A';
25.修改列類型
ALTER TABLE 表名 MODIFY 列名 列類型;
26.增加列
ALTER TABLE 表名 ADD 列名 列類型;
27.刪除列
ALTER TABLE 表名 DROP 列名;
28.列改名
ALTER TABLE 表名 CHANGE 舊列名 新列名 列類型;
29.更改表名
ALTER TABLE 表名 RENAME 新表名;
RENAME TABLE 舊表名 TO 新表名;
30.MySQL-數(shù)據(jù)更新(UPDATE)
MySQL-UPDATE語句
功能介紹:用于更新表中的現(xiàn)有數(shù)據(jù)。亦可用UPDATE語句來更改表中單個行,一組行或所有行的列值。
MySQL-UPDATE語法:
UPDATE [LOW_PRIORITY] [IGNORE] table_name
SET
column_name1 = expr1,
column_name2 = expr2,
...
WHERE
condition;
在上面UPDATE語句中:
第一,在UPDATE關(guān)鍵字后面指定要更新數(shù)據(jù)的表名。
第二,SET子句指定要修改的列和新值。要更新多個列,請使用以逗號分隔的列表。
第三,使用WHERE語句中的條件指定要更新的行。
WHERE子句是可選的。 如果省略WHERE子句,則UPDATE語句將更新表中的所有行。
MySQL-UPDATE多列
更新多列中的值,需要在SET子句中指定分配。
實例:
更新了員工編號1056的姓氏和電子郵件列:
UPDATE employees
SET
lastname = 'Hill',
email = 'mary.hill@yiibai.com'
WHERE
employeeNumber = 1056;
MySQL-UPDATE JOIN語句
在MySQL中,可以在UPDATE語句中使用JOIN子句執(zhí)行跨表更新。
JOIN語句作用:查詢表中的行(在INNER JOIN的情況下),
查詢另一個表中的相應(yīng)行 (在LEFT JOIN的情況下)。
UPDATE JOIN語法:
UPDATE T1, T2,
[INNER JOIN | LEFT JOIN] T1 ON T1.C1 = T2. C1
SET T1.C2 = T2.C2,
T2.C3 = expr
WHERE condition
UPDATE JOIN語法說明:
第一,在UPDATE子句之后,指定主表(T1)和希望主表連接表(T2)。
第二,指定一種要使用的連接,即INNER JOIN或LEFT JOIN和連接條件。JOIN子句必須出現(xiàn)在UPDATE子句之后。
第三,要為要更新的T1和/或T2表中的列分配新值。
第四,WHERE語句中的條件用于指定要更新的行。
31.為已存在表創(chuàng)建索引:
create[unique|fulltext|spatial] index 索引名 on 表名(屬性名[(長度)] [asc|desc]);
eg : create index index_id on example (id);
32.刪除索引
6.退出mysql:EXIT;
5.Mysql –UROOT –p123456
7.插入數(shù)據(jù):INSERT INTO USER VALUES(‘大黃1’,’呵呵噠’,33);
9.關(guān)鍵字大寫
三.注:workbench的漢化
https://jingyan.baidu.com/article/046a7b3e8d230bf9c27fa928.html
四、在數(shù)據(jù)庫階段我根據(jù)網(wǎng)上的視頻教程使用Navicat Premium 12
在使用Navicat Premium 12 鏈接MySQL8.0.13數(shù)據(jù)庫時報出2059錯誤
在網(wǎng)上找出了解決方案:
https://blog.csdn.net/pan_zzq/article/details/81078564