mysql 操作數(shù)據(jù)庫(kù)基礎(chǔ)詳解
一、介紹
MySQL是一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)系數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性。 是最流行的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)之一。
二、SQL分類(lèi)
SQL語(yǔ)句的五種分類(lèi)分別是DDL、DML、DDL、DQL、DCL。
- 數(shù)據(jù)定義語(yǔ)言(DDL) 用來(lái)創(chuàng)建數(shù)據(jù)庫(kù)中的各種對(duì)象,創(chuàng)建、刪除、修改表的結(jié)構(gòu)。關(guān)鍵字:create, drop,alter 等
- 數(shù)據(jù)操作語(yǔ)言(DML) 用戶(hù)通過(guò)它可以實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的基本操作,簡(jiǎn)稱(chēng)DML。關(guān)鍵字:insert, delete, update 等
- 數(shù)據(jù)查詢(xún)語(yǔ)言(DQL) 用于數(shù)據(jù)庫(kù)中表的查詢(xún)操作。關(guān)鍵字:select, where 等
- 數(shù)據(jù)控制語(yǔ)言(DCL) 用來(lái)操作數(shù)據(jù)的訪(fǎng)問(wèn)權(quán)限,安全級(jí)別,創(chuàng)建用戶(hù)等。關(guān)鍵字:GRANT, REVOKE 等
三、基本操作
創(chuàng)建
創(chuàng)建數(shù)據(jù)庫(kù):
// 創(chuàng)建數(shù)據(jù)庫(kù)db1 CREATE DATABASE db1; // 增加判斷條件,創(chuàng)建數(shù)據(jù)庫(kù),判斷、如果不存在則創(chuàng)建 // 創(chuàng)建數(shù)據(jù)庫(kù)db2(判斷,如果不存在則創(chuàng)建) CREATE DATABASE IF NOT EXISTS db2;
創(chuàng)建數(shù)據(jù)庫(kù)、并指定字符集:
//創(chuàng)建數(shù)據(jù)庫(kù)db3、并指定字符集utf8 CREATE DATABASE db3 CHARACTER SET utf8; // 查看db3數(shù)據(jù)庫(kù)的字符集 SHOW CREATE DATABASE db3;
創(chuàng)建數(shù)據(jù)表:
// 創(chuàng)建一個(gè)product商品表(商品編號(hào)、商品名稱(chēng)、商品價(jià)格、商品庫(kù)存、上架時(shí)間) CREATE TABLE product( id INT, NAME VARCHAR(20), price DOUBLE, stock INT, insert_time DATE );
給表添加列:
標(biāo)準(zhǔn)語(yǔ)法: ALTER TABLE 表名 ADD 列名 數(shù)據(jù)類(lèi)型; // 給product表添加一列color ALTER TABLE product ADD color VARCHAR(10);
給指定列添加數(shù)據(jù):
// 標(biāo)準(zhǔn)語(yǔ)法: INSERT INTO 表名(列名1,列名2,...) VALUES (值1,值2,...); // 向product表添加一條數(shù)據(jù) INSERT INTO product (id, NAME, price,stock,insert_time) VALUE (1,'手機(jī)',1999.99,25,'2022-07-26');
查詢(xún)
查詢(xún)所有數(shù)據(jù)庫(kù):
SHOW DATABASES;
查詢(xún)mysql數(shù)據(jù)庫(kù)的創(chuàng)建語(yǔ)句:
SHOW CREATE DATABASE mysql;
-查詢(xún)當(dāng)前使用的數(shù)據(jù)庫(kù)
SELECT DATABASE();
查詢(xún)所有數(shù)據(jù)表:
SHOW TABLES;
查詢(xún)表結(jié)構(gòu):
// 標(biāo)準(zhǔn)語(yǔ)法:DESC 表名; // 查詢(xún)product表結(jié)構(gòu) DESC product;
查詢(xún)數(shù)據(jù)表的字符集:
// 查看mysql數(shù)據(jù)庫(kù)中user表字符集 SHOW TABLE STATUS FROM mysql LIKE 'user';
修改
修改數(shù)據(jù)庫(kù)的字符集:
ALTER DATABASE db4 CHARACTER SET utf8;
修改表名:
// 標(biāo)準(zhǔn)語(yǔ)法:ALTER TABLE 舊表名 RENAME TO 新表名; // 將product表修改為product2 ALTER TABLE product RENAME TO product2;
修改表的字符集:
// 標(biāo)準(zhǔn)語(yǔ)法: ALTER TABLE 表名 CHARACTER SET 字符集名稱(chēng); // 先查看product2數(shù)據(jù)表的字符集 SHOW TABLE STATUS FROM db1 LIKE 'product2'; // 修改product2數(shù)據(jù)表的字符集為utf8 ALTER TABLE product2 CHARACTER SET utf8;
修改表中列的數(shù)據(jù)類(lèi)型:
// 標(biāo)準(zhǔn)語(yǔ)法: ALTER TABLE 表名 MODIFY 列名 數(shù)據(jù)類(lèi)型; // 修改product表的數(shù)據(jù)類(lèi)型color為int ALTER TABLE product MODIFY color INT;
修改表中列的名稱(chēng)和數(shù)據(jù)類(lèi)型:
// 標(biāo)準(zhǔn)語(yǔ)法: ALTER TABLE 表名 CHANGE 舊列名 新列名 數(shù)據(jù)類(lèi)型; // 將color修改為address ALTER TABLE product CHANGE color address VARCHAR(200);
刪除
刪除數(shù)據(jù)庫(kù):
// 刪除db1數(shù)據(jù)庫(kù) DROP DATABASE db4; // 刪除數(shù)據(jù)庫(kù),判斷、如果存在則刪除 // 刪除數(shù)據(jù)庫(kù)db2,如果存在 DROP DATABASE IF EXISTS db4;
刪除表:
// 標(biāo)準(zhǔn)語(yǔ)法: DROP TABLE 表名; // 刪除product數(shù)據(jù)表 DROP TABLE product; // 刪除表,判斷、如果存在則刪除 // 標(biāo)準(zhǔn)語(yǔ)法: DROP TABLE IF EXISTS 表名; // 判斷product表是否存在,存在則刪除 DROP TABLE IF EXISTS product;
刪除表中的列:
// 標(biāo)準(zhǔn)語(yǔ)法: ALTER TABLE 表名 DROP 列名; // 刪除address列 ALTER TABLE product DROP address;
使用數(shù)據(jù)庫(kù)
使用db3數(shù)據(jù)庫(kù) USE db3;
到此這篇關(guān)于mysql 操作數(shù)據(jù)庫(kù)基礎(chǔ)詳解的文章就介紹到這了,更多相關(guān)mysql 操作數(shù)據(jù)庫(kù) 內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Mysql數(shù)據(jù)庫(kù)支持的存儲(chǔ)引擎對(duì)比
- MySQL數(shù)據(jù)庫(kù)三種常用存儲(chǔ)引擎特性對(duì)比
- MySQL數(shù)據(jù)庫(kù)MyISAM存儲(chǔ)引擎轉(zhuǎn)為Innodb的方法
- 深入探討:MySQL數(shù)據(jù)庫(kù)MyISAM與InnoDB存儲(chǔ)引擎的比較
- MySQL數(shù)據(jù)庫(kù)存儲(chǔ)引擎和分支現(xiàn)狀分析
- MySQL數(shù)據(jù)庫(kù)數(shù)據(jù)刪除操作詳解
- MySQL數(shù)據(jù)庫(kù)的多表操作
- MySQL數(shù)據(jù)庫(kù)學(xué)習(xí)之查詢(xún)操作詳解
- MySQL數(shù)據(jù)庫(kù)存儲(chǔ)引擎介紹及數(shù)據(jù)庫(kù)的操作詳解
相關(guān)文章
mysql數(shù)據(jù)庫(kù)decimal類(lèi)型與decimal長(zhǎng)度用法詳解
在MySQL中decimal是一種用于存儲(chǔ)精確數(shù)字的數(shù)據(jù)類(lèi)型,下面這篇文章主要給大家介紹了關(guān)于mysql數(shù)據(jù)庫(kù)decimal類(lèi)型與decimal長(zhǎng)度用法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-01-01快速解決mysql導(dǎo)數(shù)據(jù)時(shí),格式不對(duì)、導(dǎo)入慢、丟數(shù)據(jù)的問(wèn)題
這篇文章主要介紹了快速解決mysql導(dǎo)數(shù)據(jù)時(shí),格式不對(duì)、導(dǎo)入慢、丟數(shù)據(jù)的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-07-07在windows上安裝不同(兩個(gè))版本的Mysql數(shù)據(jù)庫(kù)的教程詳解
這篇文章主要介紹了在windows上安裝不同(兩個(gè))版本的Mysql數(shù)據(jù)庫(kù) ,需要的朋友可以參考下2019-04-04一文搞定MySQL binlog/redolog/undolog區(qū)別
這篇文章主要介紹了一文搞定MySQL binlog/redolog/undolog區(qū)別,作為開(kāi)發(fā),我們重點(diǎn)需要關(guān)注的是二進(jìn)制日志(binlog)和事務(wù)日志(包括redo log和undo log),本文接下來(lái)會(huì)詳細(xì)介紹這三種日志,需要的朋友可以參考下2023-04-04MySQL中的LOCATE和POSITION函數(shù)使用方法
不常用:MySQL中的LOCATE和POSITION函數(shù)2010-02-02MySQL中隔離級(jí)別RC與RR的區(qū)別及說(shuō)明
這篇文章主要介紹了MySQL中隔離級(jí)別RC與RR的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08