Mysql的相關知識
一.資料庫的列型別(常用)
1.數值
int
2.字串
varchar 可變字串 0-65535 常用的變數String
text 文字串 2^16-1 儲存大文字
3.時間日期
data:YYYY-MM-DD,日期格式
time: HH:mm:ss, 時間格式
datatime YYYY-MM-DD HH:mm:ss 最常用的格式
timestamp 時間戳 , 1970.1.1到現在的毫米數! 也較為常有!
year 年份表示
4.null
沒有值,未知
注意:不要使用NULL進行運算,結果為NULL
二.資料庫的欄位屬性
1.Unsigned
無符號的整數 聲明瞭該列不能宣告為負數
2.Zerofill
0填充的 不足的位數,使用0來填充 int(3), 5----005
3. auto_increment
自增 通常理解為自動在上一條記錄的基礎上 +1 (預設)
通常用來設計唯一的主鍵 index,必須是整數型別
可以自定義設計主鍵自增的起始值和步長
4.非空 NUll not null
5.預設值 defalut
二.建立資料庫表
格式:
create table[if not exists]表名(
`欄位名` 列型別 [屬性][索引][註釋] ,
`欄位名` 列型別 [屬性][索引][註釋] ,
...............
`欄位名` 列型別 [屬性][索引][註釋]
)[表型別][字符集設定][註釋]
常用命令
show create database 資料庫庫名 --檢視建立資料庫的語句
show create table 表名 -- 檢視資料表的定義語句
Desc 表名--顯示錶的結構
三.資料庫的修改表結構
1.修改表名
alter table 表名 rename as 新表名
2.給表增加一個新欄位
alter table 表名 add 新欄位名 約束
3.給表刪除一個欄位
alter table 表名 drop 欄位
4.修改表的欄位約束
alter table 表名 modief 欄位名 (想要改的約束) 新約束
5.將表的某個欄位名重新命名
alter table 表名 change 舊錶名 新表名 (可以是新約束可以是舊約束)約束
四.資料庫的資料操作
1.表資料的插入
insert into 表名[欄位名]values('欄位值'),('欄位值1'),('欄位值2').....
注意:若欄位名沒有標註的話 則要將資料與欄位一一對應輸入
2.表資料的修改
update 表名 set 欄位='欄位值' where (判斷修改的位置)
3.表資料的刪除
delete from 表名 where (判斷刪除的位置)
注意:若表的資料修改和表的資料刪除沒有規定位置 則對整個表的資料進行操作
(不推薦這樣使用,使用的時候要慎重!)
4.表的清空
truncate 表名:用於將表的資料清空
注意:表用delete清空和用truncate清空的不同 用delete清空的話 表的自增段會延續不會置1
而用truncate清空的話,自增段會從頭開始, 不會影響事務
(瞭解)delete刪除的問題,重啟資料 現象
1.InnoDB(資料庫預設)自增列會重1開始(存在記憶體當中的,斷電即失)
2.MyISAM 繼續從上一個自增量開始(存在檔案中,不會丟失)