山東省建設(shè)工程招標(biāo)中心網(wǎng)站當(dāng)日網(wǎng)站收錄查詢(xún)統(tǒng)計(jì)
數(shù)據(jù)庫(kù)的操作
對(duì)庫(kù)的操作
-
SQL通用語(yǔ)法規(guī)則介紹
-
創(chuàng)建數(shù)據(jù)庫(kù)
-
使用數(shù)據(jù)庫(kù)
-
查詢(xún)所有數(shù)據(jù)庫(kù)
-
查詢(xún)當(dāng)前數(shù)據(jù)庫(kù)
-
刪除數(shù)據(jù)庫(kù)
對(duì)庫(kù)中表的操作
🚘🚘🚘正片開(kāi)始
SQL通用語(yǔ)法規(guī)則介紹
-
SQL語(yǔ)句可以單行或多行書(shū)寫(xiě),以分號(hào)結(jié)尾。
-
SQL語(yǔ)句可以使用空格和縮進(jìn)來(lái)增強(qiáng)語(yǔ)句的可讀性。
-
MySQL數(shù)據(jù)庫(kù)的SQL語(yǔ)句不區(qū)分大小寫(xiě),關(guān)鍵字建議使用大寫(xiě),但沒(méi)強(qiáng)制規(guī)定。
-
注釋:
- 單行注釋:-- + 注釋內(nèi)容 或者 # +注釋內(nèi)容(MySQL特有)
- 多行注釋:/* 注釋內(nèi)容 */
創(chuàng)建數(shù)據(jù)庫(kù)語(yǔ)法
create database [if not exists] 數(shù)據(jù)庫(kù)名 [default 字符集][collate 排序規(guī)則];
注:使用上述語(yǔ)法時(shí),[ ] 中的語(yǔ)法可以省略不寫(xiě)
創(chuàng)建數(shù)據(jù)庫(kù)展示效果
mysql> create database test;
Query OK, 1 row affected (0.01 sec)mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| my_db |
| mysql |
| performance_schema |
| sys |
| test |
+--------------------+
6 rows in set (0.00 sec)mysql>
當(dāng)test數(shù)據(jù)庫(kù)已存在時(shí)我們?cè)俅蝿?chuàng)建則會(huì)怎么樣呢?讓我們來(lái)試試。
mysql> create database test;
ERROR 1007 (HY000): Can't create database 'test'; database exists
mysql>
可以看見(jiàn)它反饋的結(jié)果是說(shuō)不能創(chuàng)建數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)已存在
不妨我們使用一下 if not exists
這個(gè)看看
mysql> create database if not exists test;
Query OK, 1 row affected, 1 warning (0.01 sec)mysql>
現(xiàn)在沒(méi)有報(bào)錯(cuò)了,只是出現(xiàn)了個(gè)警告,在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),當(dāng)加上這個(gè)if not exists
則系統(tǒng)會(huì)檢測(cè)你當(dāng)前庫(kù)中是否有同名的test數(shù)據(jù)庫(kù)如果有則不創(chuàng)建,沒(méi)有則創(chuàng)建。
使用數(shù)據(jù)庫(kù)語(yǔ)法
use 數(shù)據(jù)庫(kù)名;
展示效果
mysql> use test;
Database changed
mysql>
查詢(xún)所有數(shù)據(jù)庫(kù)語(yǔ)法
show databases;
效果展示
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| my_db |
| mysql |
| performance_schema |
| sys |
| test |
+--------------------+
6 rows in set (0.00 sec)mysql>
查詢(xún)當(dāng)前所處數(shù)據(jù)庫(kù)語(yǔ)法
select database();
展示效果
mysql> select database();
+------------+
| database() |
+------------+
| test | #當(dāng)前處于test數(shù)據(jù)庫(kù)
+------------+
1 row in set (0.00 sec)mysql>
刪除數(shù)據(jù)庫(kù)語(yǔ)法
drop database [if exists] 數(shù)據(jù)庫(kù)名;
展示效果
刪除前該庫(kù)中是有test數(shù)據(jù)庫(kù)的
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| my_db |
| mysql |
| performance_schema |
| sys |
| test |
+--------------------+
6 rows in set (0.00 sec)
mysql>
執(zhí)行刪除語(yǔ)句
#test刪除成功mysql> drop database test;
Query OK, 0 rows affected (0.01 sec)mysql>
再次查看數(shù)據(jù)庫(kù)中是否有test庫(kù)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| my_db |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.00 sec)mysql>
可以看見(jiàn)已經(jīng)沒(méi)有了
當(dāng)使用 drop database if not exists 數(shù)據(jù)庫(kù)名;
這條語(yǔ)句刪數(shù)據(jù)庫(kù)時(shí) 則有該數(shù)據(jù)庫(kù)則刪除,無(wú)則不刪,更有安全保障。
創(chuàng)建一個(gè)表的語(yǔ)法
create table 表名(字段1 字段1的類(lèi)型[comment 字段1的注釋],字段2 字段2的類(lèi)型[comment 字段2的注釋],字段3 字段3的類(lèi)型[comment 字段3的注釋],字段4 字段4的類(lèi)型[comment 字段4的注釋],……………………………………………………………字段n 字段n的類(lèi)型[comment 字段n的注釋]
)[comment 表注釋];
展示效果
mysql> create table mytable(-> id tinyint comment '編號(hào)',-> name varchar(5) comment '名字',-> age tinyint comment '年齡',-> address varchar(15) comment '地址',-> tel char(11) comment '電話(huà)'-> );
Query OK, 0 rows affected (0.03 sec)mysql>
查詢(xún)當(dāng)前數(shù)據(jù)庫(kù)所有表的語(yǔ)法
show tables;
展示效果
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| mytable | #mytable 已經(jīng)創(chuàng)建出來(lái)了
+----------------+
1 row in set (0.00 sec)mysql> select database();
查詢(xún)表結(jié)構(gòu)的語(yǔ)法
desc mytable;
mysql> desc mytable;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id | tinyint | YES | | NULL | |
| name | varchar(5) | YES | | NULL | |
| age | tinyint | YES | | NULL | |
| address | varchar(15) | YES | | NULL | |
| tel | char(11) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.00 sec)mysql>
查詢(xún)指定表的建表語(yǔ)句的語(yǔ)法
show create table mytable;
展示效果
mysql> show create table mytable;
CREATE TABLE `mytable` (`id` tinyint DEFAULT NULL COMMENT '編號(hào)',`name` varchar(5) DEFAULT NULL COMMENT '名字',`age` tinyint DEFAULT NULL COMMENT '年齡',`address` varchar(15) DEFAULT NULL COMMENT '地址',`tel` char(11) DEFAULT NULL COMMENT '電話(huà)'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci
完結(jié)🎉🎉🎉