ApacheCon Asia 2022 強勢來襲!16 大專題等你投稿!
1、使用CMD命令列操作Mysql資料庫
1、連線資料庫
mysql -u資料庫名 -p密碼 --例如 mysql -uroot -p
2、檢視所有資料庫
show databases;
3、檢視某個資料庫下面所有的表
show tables;
4、檢視某個表的具體資訊
desc 表名; --例如 desc student;
5、退出資料庫連線
exit
6、單行註釋
--單行註釋
7、多行註釋
/*
sql的多行註釋
*/
學習資料庫主要就是學習: DDL(定義)、DML(操作)、DQL(查詢)、 DCL(控制)
2、操作資料庫
操作資料庫-->操作資料庫中的表-->操作資料庫中表的資料
2.1、操作資料庫
1、建立資料庫
CREATE DATABASE [IF NOT EXISTS] 資料庫名;
2、刪除資料庫
DROP DATABASE [IF EXISTS] 資料庫名;
3、使用資料庫
--鍵盤上TAB鍵上面的````,如果你的表名或者欄位名帶有特殊字元,那麼就需要帶``
USE `school`;
USE 資料庫名;
4、檢視所有的資料庫
SHOW DATABASES;
2.2、資料庫的列型別
數值
-
tinyint 十分小的資料 1個位元組
-
smallint 較小的資料 2個位元組
-
mediumint 中等大小的資料 3個位元組
-
int 標準的整數 4個位元組
-
bigint 較大的整數 8個位元組
-
float 浮點數 4個位元組
-
double 浮點數 8個位元組
-
decimal 字串形式的浮點數,金融計算的時候,一般使用該資料型別
字串
-
char 固定大小的字串 0~255
-
varchar 可變字串 0~65535
-
tinytext 微型文字 255
-
text 文字串 65535
時間日期
- date YYYY-MM-DD 日期格式
- time HH : mm : ss 時間格式
- date-time YYYY-MM-DD HH : mm : ss 最常用的時間格式
- timestamp 時間戳 1970.1.1到現在的毫秒數
null
沒有值,未知
2.3 資料庫的欄位屬性
unsigned
-
無符號的整數
-
該列不能儲存負數
zerofull
-
零填充
-
不足的位數用0來填充,例如:int(3) 5==005
自增
- 自增,通常在上一條記錄的基礎上+1(預設)
- 通常用來設計唯一的主鍵,必須是整數型別
- 可以定義自增的起始值、步長
非空
- 如果某列設為"非空",如果不給它賦值,那麼就會報錯
- 如果某列設為null,那麼該列的值預設為null
預設
設定預設的值
2.4 建立資料庫表
示例
CREATE TABLE IF NOT EXISTS `student`(
`id` INT(10) NOT NULL AUTO_INCREMENT COMMENT '學號',
`name` VARCHAR(20) NOT NULL COMMENT '姓名',
`age` INT(3) NOT NULL COMMENT '年齡',
`gender` CHAR(2) DEFAULT '男' COMMENT '性別',
`address` VARCHAR(20) DEFAULT NULL COMMENT '地址',
`email` VARCHAR(20) DEFAULT NULL COMMENT '郵箱',
PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8
格式
create table [if not exists] `表名`(
`欄位名` 列型別 [屬性] [索引] [註釋],
`欄位名` 列型別 [屬性] [索引] [註釋],
`欄位名` 列型別 [屬性] [索引] [註釋]
)[引擎] [字符集] [註釋]