文章目錄
- 數據類型
- 數值類型
- 字符串類型
- 日期/時間類型
- 常用命令一覽
- 庫的操作
- 顯示當前數據庫
- 創建數據庫
- 使用數據庫
- 刪除數據庫
- 表的操作
- 創建表
- 顯示當前庫中所有表
- 查看表結構
- 刪除表
數據類型
mysql
的數據類型主要分為 數值類型、日期/時間類型、字符串類型 三種。
數值類型
數值類型可以指定為 無符號(unsigned)
,表示不取負數。 1字節(bytes)= 8bit
。 對于整型類型的范圍:
- 有符號范圍: -2(類型字節數*8-1) 到 2(類型字節數*8-1)-1,如
int
是4字節
,就是 -231 到 231-1 。 - 無符號范圍: 0 到 2(類型字節數*8)-1,如
int
就是 232-1 。盡量不使用unsigned
,對于int類型
可能存放不下的數據,int unsigned
同樣可能存放不下,與其如此,還不如設計時,將int
類型提升為bigint
類型。
字符串類型
日期/時間類型
常用命令一覽
SELECT 從數據庫中提取數據
UPDATE 更新數據庫中的數據
DELETE 從數據庫中刪除數據
INSERT INTO 將新數據插入數據庫
CREATE DATABASE 創建一個新的數據庫
ALTER DATABASE 修改數據庫
CREATE TABLE 創建一個新表
ALTER TABLE 修改表
DROP TABLE 刪除表
CREATE INDEX 創建索引(搜索鍵)
DROP INDEX 刪除索引
庫的操作
顯示當前數據庫
語法
SHOW DATABASES;
示例
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| world |
+--------------------+
6 rows in set (0.00 sec)
創建數據庫
語法
CREATE DATABASE [IF NOT EXISTS] [數據庫名];
//數據庫名只能是數字、字母、下劃線,IF NOT EXISTS為可選選項,如果數據庫存在則不再創建
示例
mysql> CREATE DATABASE IF NOT EXISTS Test;
Query OK, 1 row affected (0.00 sec)mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| test |
| world |
+--------------------+
7 rows in set (0.00 sec)
使用數據庫
語法
USE [數據庫名];
示例
mysql> USE test
Database changed
刪除數據庫
語法
DROP DATABASE [IF EXISTS] [數據庫名];
示例
mysql> DROP DATABASE IF EXISTS test;
Query OK, 0 rows affected (0.01 sec)mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sakila |
| sys |
| world |
+--------------------+
6 rows in set (0.00 sec)
表的操作
創建表
語法
CREATE TABLE [IF NOT EXISTS] [表名] ([數據名] [數據類型],[數據名] [數據類型],[數據名] [數據類型]
);
示例
mysql> CREATE TABLE book(-> name varchar(10),-> price decimal,-> publish date,-> num int-> );
Query OK, 0 rows affected (0.03 sec)
顯示當前庫中所有表
語法
SHOW TABLES;
示例
mysql> SHOW TABLES;
+----------------+
| Tables_in_test |
+----------------+
| book |
+----------------+
1 row in set (0.00 sec)
查看表結構
語法
DESC [數據庫名];
// DESCRIBE 是等價于 SHOW COLUMNS FROM 的一種快捷方式
示例
mysql> DESC book;
+---------+---------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+---------------+------+-----+---------+-------+
| name | varchar(10) | YES | | NULL | |
| price | decimal(10,0) | YES | | NULL | |
| publish | date | YES | | NULL | |
| num | int | YES | | NULL | |
+---------+---------------+------+-----+---------+-------+
4 rows in set (0.01 sec)
刪除表
語法
DROP TABLE [IF EXISTS] [數據庫名];
示例
mysql> DROP TABLE IF EXISTS book;
Query OK, 0 rows affected (0.01 sec)mysql> SHOW TABLES;
Empty set (0.00 sec)