初入mysql

啟動:net start mysql
關(guān)閉:net stop mysql

-D,--database=name 打開指定的數(shù)據(jù)庫
--deliiter = name 指定分隔符
-h预烙,--host=name 服務(wù)器名稱
-p,--password[=name]密碼
-p,--port=# 端口號
--prompt=name 設(shè)置提示符
-u,--user=name 用戶名
-V ,--version 輸出版本信息并退出

修改mysql提示符\D,\d兔毒,\h糟秘, \u
1.通過連接客戶端時通過參數(shù)指定
shell>mysql -uroot -proot --prompt 提示符
2.連接上客戶端后,通過prompt命令修改
mysql>prompt 提示符

創(chuàng)建數(shù)據(jù)庫
CREATE {DATABASE | SCHEMA} [IF NOT EXTSTS] db_name
[DEFAULT] CHARCTER SET [=] charset_name
{}必選 []可選
朝看當(dāng)前服務(wù)下的數(shù)據(jù)表列表
SHOW {DATABASES | SCHEMAS}
[LIKE 'pattern' | WHERE expr]

創(chuàng)建數(shù)據(jù)庫
CREATE [DATABASE | SCHEMA] [IF NOT EXISTS] db_name
CREATE DATABASE IF NOT EXISTS t1; 忽略警告
SHOW WARNINGS; //查看警告
SHOW CREATE DATABASE t1; //創(chuàng)建數(shù)據(jù)庫時的指令是多少
CREATE DATABASE IF NOT EXISTS db_name CHARACTER SET gbk;//創(chuàng)建數(shù)據(jù)為gbk的編碼方式
修改數(shù)據(jù)庫:
ALTER{DATABASE | SCHEMA} [db_name][DEFAULT] CHARACTER SET [=] charset_name

ALETER DATABASE db_name CHARCTER SET = utf8; //修改數(shù)據(jù)庫的編碼方式;

刪除數(shù)據(jù)庫:
DROP {DATABASE | SCHEMA} [IF NOT EXISTS] db_name;

數(shù)據(jù)類型:數(shù)據(jù)類型是指列师郑、儲存過程參數(shù)、表達(dá)式和局部變量的數(shù)據(jù)特征调窍、它決定了數(shù)據(jù)的存儲格式宝冕、代表了不同信息類型。
整形:TINYINT/SMALLINT/MEDIUMINT/INT/BIGINT
浮點型:FLOAT/DOUBLE
日期時間類型:YEAR/TIME/DATE/DATETIME/TIMESTAMP
字符型:CHAR(M)/VARCHAR(M)/TINYTEXXT/TEXT/MEDIUMTEXT/LONGTEXT/ENUM('value1','value2'..)/SET('value1','value2'..)

創(chuàng)建數(shù)據(jù)表:數(shù)據(jù)表是數(shù)據(jù)庫當(dāng)中最重要的組成部分之一邓萨,是其他對象的基礎(chǔ)地梨。
a、創(chuàng)建數(shù)據(jù)表之前選擇在哪一個數(shù)據(jù)庫操作
USE test;

b缔恳、查詢該數(shù)據(jù)庫是否被打開
SELECT DATABASE();

c宝剖、創(chuàng)建數(shù)據(jù)表
CREATE TABLE tb1(
username CHAR(20),
age TINYINT UNSIGNED, UNSIGED是指不能有負(fù)數(shù)
salary FLOAT(8,2) UNSIGNED
);

d、查看數(shù)據(jù)表
SHOW TABLES;

e.查看數(shù)據(jù)表結(jié)構(gòu):其實是列的性質(zhì)
SHOW COLUMNS from tb2;

f.向表中插入數(shù)據(jù)
INSERT tb1 VALUES ('Tom',20,4321.32);如果沒有指定列,則全部字段都必須賦值歉甚,否則用報錯
INSERT tb1(username,salary) VALUES ('Jenny',2999.29);

g万细、查詢表中的數(shù)據(jù)
SELECT * from tb1;

h、非空驗證:null / not null
在創(chuàng)建表時纸泄,如果后面沒有加NULL/NOT NULL,字段默認(rèn)為空赖钞;如果加了NOT NULL,表示字段不能為空聘裁。并且如果為not null雪营,又沒有錄入數(shù)據(jù)的話,就會無法進(jìn)行編譯
CREATE TABLE tb3(
username CHAR(20) NOT NULL, 若插入數(shù)據(jù)時沒有給username賦值咧虎,則報錯卓缰,因為已經(jīng)設(shè)置不能為空
age TINYINT UNSIGNED NULL
);

i. 自動編號:auto_increment
必須與主鍵primary key組合使用征唬,默認(rèn)起始值為1总寒,每次的增量為1理肺;
create table tb3(
id smallint unsigned auto_increment primary key,
username varchar(20)
);

j.主鍵約束:PRIMARY KEY
主鍵保證記錄的唯一性,每張數(shù)據(jù)表只能存在一個主鍵年枕,主鍵自動被NOT NULL
注意:設(shè)置了主鍵以后熏兄,該字段不能為空,且不能重復(fù)

k.唯一約束:UNIQUE KEY
主鍵約束一張表只能有一個桥状,但是唯一約束一張表可以有多個硝清,且唯一約束可以為空值
l.默認(rèn)值:DEFAULT
當(dāng)插入記錄的時候芦拿,如果沒有明確為字段賦值,則自動賦予默認(rèn)值
sex ENUM('1','2','3') DEFAULT '3'

ALTER [IGNORE] TABLE tbl_name
ADD [COLUMN] column_definition [FIRST | AFTER col_name ]//添加單個字段
| ADD [COLUMN] (column_definition,...)//添加多個字段
| ADD INDEX [index_name] [index_type] (index_col_name,...)//添加索引
| ADD [CONSTRAINT [symbol]]
PRIMARY KEY [index_type] (index_col_name,...)//添加主鍵
| ADD [CONSTRAINT [symbol]]
UNIQUE [index_name] [index_type] (index_col_name,...)//添加唯一索引
| ADD [CONSTRAINT [symbol]]
FOREIGN KEY [index_name] (index_col_name,...)
[reference_definition]//添加外鍵
| ALTER [COLUMN] col_name {SET DEFAULT literal | DROP DEFAULT}//添加刪除default約束
| CHANGE [COLUMN] old_col_name column_definition
[FIRST|AFTER col_name]//修改字段名等
| MODIFY [COLUMN] column_definition [FIRST | AFTER col_name]//修改除字段名外的
| DROP [COLUMN] col_name//刪除字段
| DROP PRIMARY KEY//刪除主鍵
| DROP INDEX index_name//刪除索引
| DROP FOREIGN KEY fk_symbol//刪除外鍵
| [DEFAULT] CHARACTER SET charset_name [COLLATE collation_name]//修改字符集

外鍵約束的參照操作 刪除滿足條件的記錄:DELETE FROM 表名 WHERE 條件变汪;
刪除所有記錄:DELETE FROM 表名裙盾。
外鍵操作定義:FOREIGN KEY(外鍵名) REFERENCES 附表名(參照列) ON DELETE CASCADE
物理外鍵約束只適用于InnoDB數(shù)據(jù)庫番官,實際項目開發(fā)中采用邏輯外鍵

表級約束與列級約束
(1)對一個數(shù)據(jù)列建立的約束钢属,稱為列級約束
(2)對多個數(shù)據(jù)列建立的約束淆党,稱為表級約束
(3)列級約束既可以在列定義時聲明,也可以在列定以后聲明
(4)表級約束只能在列定義后聲明
2.主鍵山孔、外鍵、非空台颠、唯一串前、check荡碾,default都是約束條件。主鍵玩荠、外鍵、唯一既可以作為表級約束,也可作為列級約束
而非空not null女坑,默認(rèn)default只有列級約束

修改數(shù)據(jù)表
添加主鍵約束:
ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] PRIMARY KEY index_type
添加外鍵約束:
ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] FOREIGN KEY index_name reference_definition
添加唯一約束:
ALTER TABLE tbl_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...)
添加/刪除默認(rèn)約束:
ALTER TABLE tbl_name ALTER[COLUMN] col_name{SET DEFAULT literal|DROP DEFAULT}

刪除主鍵約束
ALTER TABLE tbl_name DROP PRIMARY KEY;
刪除唯一約束
ALTER TABLE tbl_name DROP {INDEX|KEY} index_name;
eg:
ALTER TABLE tbl_name DROP INDEX user; 刪除user字段的唯一約束
刪除外鍵約束
ALTER TABLE tbl_name DROP FOREIGN KEY fk_symbol;刪除時一定要加上外鍵約束的名稱可以用SHOW CREATE TABLE tbl_name查看

修改列定義
ALTER TABLE tbl_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name]
eg:
ALTER TABLE tbl_name MODIFY id TINYINT NOT NULL FIRST;將id字段改為首字段

修改列名稱
ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST|ALTER col_name]即可以改列名稱也可以改列定義
eg:
ALTER TABLE user CHANGE pid p_id TINYINT UNSIGNED NOT NULL; 將pid字段名稱更改為p_id,并將其類型更改為TINYINT

數(shù)據(jù)表更名
方法一:
ALTER TABLE tbl_name RENAME [TO|AS] new_tbl_name
eg:
ALTER TABLE users2 RENAME users3;將數(shù)據(jù)表名稱更改為user3
方法二
RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2] ....可以為多張數(shù)據(jù)表進(jìn)行更名
eg:
RENAME TABLE users2 TO users3;

盡量少進(jìn)行數(shù)據(jù)表更名或者數(shù)據(jù)列的更名

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市碉就,隨后出現(xiàn)的幾起案子闷串,更是在濱河造成了極大的恐慌,老刑警劉巖烹吵,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肋拔,死亡現(xiàn)場離奇詭異凉蜂,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)窿吩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進(jìn)店門爆存,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人携冤,你說我怎么就攤上這事曾棕〔搜” “怎么了?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵昧穿,是天一觀的道長时鸵。 經(jīng)常有香客問我厅瞎,道長,這世上最難降的妖魔是什么彭雾? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮身诺,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘橄务。我一直安慰自己蜂挪,他們只是感情好棠涮,可當(dāng)我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布刺覆。 她就那樣靜靜地躺著谦屑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪酝枢。 梳的紋絲不亂的頭發(fā)上帘睦,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天,我揣著相機(jī)與錄音竣付,去河邊找鬼卑笨。 笑死赤兴,一個胖子當(dāng)著我的面吹牛隧哮,可吹牛的內(nèi)容都是我干的沮翔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼榆鼠!你這毒婦竟也來了妆够?” 一聲冷哼從身側(cè)響起神妹,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤鸵荠,失蹤者是張志新(化名)和其女友劉穎蛹找,沒想到半個月后姨伤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡熄赡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年姜挺,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片彼硫。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡炊豪,死狀恐怖凌箕,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情词渤,我是刑警寧澤牵舱,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布,位于F島的核電站缺虐,受9級特大地震影響芜壁,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜慧妄,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一饱普、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧冯袍,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽今穿。三九已至,卻和暖如春胚嘲,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留毫缆,地道東北人。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓棵磷,卻偏偏與公主長得像沉桌,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子蔼夜,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內(nèi)容

  • 1、MySQL啟動和關(guān)閉(安裝及配置請參照百度經(jīng)驗似谁,這里不再記錄续搀。MySQL默認(rèn)端口號:3306;默認(rèn)數(shù)據(jù)類型格式...
    強(qiáng)壯de西蘭花閱讀 654評論 0 1
  • 1洁桌、約束概述 約束的目的是為了保證數(shù)據(jù)的完整性與一致性。 按照約束的范圍劃分:列級約束:只對一個數(shù)據(jù)列建立約束。既...
    黒貓閱讀 987評論 3 5
  • 什么是數(shù)據(jù)庫栅组? 數(shù)據(jù)庫是存儲數(shù)據(jù)的集合的單獨的應(yīng)用程序。每個數(shù)據(jù)庫具有一個或多個不同的API把沼,用于創(chuàng)建,訪問捆愁,管理...
    chen_000閱讀 4,041評論 0 19
  • 回顧和概述 數(shù)據(jù)類型 整型 浮點型 字符型 日期時間型 數(shù)據(jù)表操作 如何創(chuàng)建數(shù)據(jù)表 PRIMARY KEY(主鍵約...
    齊天大圣李圣杰閱讀 707評論 0 0
  • 1切平、概述 ??索引是一種特殊的文件(InnoDB數(shù)據(jù)表上的索引是表空間的一個組成部分)控妻,它們包含著對數(shù)據(jù)表里所有記...
    黒貓閱讀 383評論 0 3