MyBatis操作數據庫

1.基礎操作

  1. 創建數據庫 CREATE DATABASE [IF NOT EXISTS] westos;
  2. 刪除數據庫 DROP DATABASE [IF EXISTS] westos
  3. 使用數據庫USEschool``
  4. 查看數據庫SHOW DATABASES
    學習思路:
    對照 sqlyog可視化歷史記錄查看sql
    固定的語法或關鍵字必須要強行記住!

2.數據庫的列類型

數值

  • tinyint 十分小的數據 1個字節
  • smallint 較小的數據 2個字節
  • mediumint 中等大小的數據 3個字節
  • int 標準的整數 4個字節 常用的 int bigint 較大的數據 8個字節
  • float 浮點數 4個字節
  • double 浮點數 8個字節 (精度問題!)
  • decimal 字符串形式的浮點數 金融計算的時候,一般是使用decimal

字符串

  • char 字符串固定大小的 0~255
  • varchar 可變字符串 0~65535 常用的變量 String
  • tinytext 微型文本 2^8 - 1
  • text 文本串 2^16 -1 保存大文本

時間日期

  • date YYYY-MM-DD , 日期格式
  • time HH:mm:ss 時間格式
  • datetime YYYY-MM-DD HH:mm:ss 最常用的時間格式
  • timestamp 時間戳, 1970.1.1 到現在的毫秒數! 也較爲常用!
  • year 年份表示

null
沒有值,未知
儘量不要使用NULL進行運算,結果爲NULL

3.字符串的字段屬性

Unsigned

  • 無符號的整數
  • 聲明瞭該列不能聲明爲負數
    zerofill
    0填充的 不足的位數,使用0來填充, int(3) , 5 — 005

自增

  • 通常理解爲自增,自動在上一條記錄的基礎上 + 1(默認)
  • 通常用來設計唯一的主鍵~ index,必須是整數類型
  • 可以自定義設計主鍵自增的起始值和步長

非空 NUll not null

  • 假設設置爲 not null ,如果不給它賦值,就會報錯!
  • NUll ,如果不填寫值,默認就是null!

默認
設置默認的值! sex,默認值 爲 男,如果不指定該列的值,則會有默認的值!

4. 創建數據庫表

-- 目標 : 創建一個school數據庫 -- 創建學生表(列,字段)  使用SQL 創建 
-- 學號int 登錄密碼varchar(20) 姓名,性別varchar(2),出生日期(datatime),家庭住 址,email
-- 注意點,使用英文 () , 表的名稱 和 字段 儘量使用  `` 括起來 
-- AUTO_INCREMENT 自增 
-- 字符串使用 單引號括起來! 
-- 所有的語句後面加 , (英文的),後一個不用加 
-- PRIMARY KEY 主鍵,一般一個表只有一個唯一的主鍵! 
CREATE TABLE IF NOT EXISTS `student` (   
`id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '學號',   
`name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',  
`pwd` VARCHAR(20)NOT NULL DEFAULT '123456' COMMENT '密碼',  
`sex` VARCHAR(2) NOT NULL DEFAULT '女' COMMENT '性別',   
`birthday` DATETIME DEFAULT NULL COMMENT '出生日期',   
`address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',   
`email` VARCHAR(50) DEFAULT NULL COMMENT '郵箱',   
PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=utf8

格式:

CREATE TABLE [IF NOT EXISTS] `表名`(   
'字段名' 列類型 [屬性] [索引] [註釋],   
'字段名' 列類型 [屬性] [索引] [註釋],    
......   
'字段名' 列類型 [屬性] [索引] [註釋] 
)[表類型][字符集設置][註釋]

常用命令:

SHOW CREATE DATABASE school -- 查看創建數據庫的語句 
SHOW CREATE TABLE student -- 查看student數據表的定義語句 
DESC student -- 顯示錶的結構

5 數據庫類型

  • INNODB 默認使用~
  • MYISAM 早些年使用的
    常規使用操作:
  • MYISAM 節約空間,速度較快
  • INNODB 安全性高,事務的處理,多表多用戶操作

6 修改數據庫

修改

-- 修改表名 : ALTER TABLE 舊錶名 RENAME AS 新表名 
ALTER TABLE teacher RENAME AS teacher1 
-- 增加表的字段 :  ALTER TABLE 表名 ADD 字段名 列屬性 
ALTER TABLE teacher1 ADD age INT(11)
-- 修改表的字段 (重命名,修改約束!) 
-- ALTER TABLE 表名 MODIFY 字段名 列屬性[] 
ALTER TABLE teacher1 MODIFY age VARCHAR(11)  
-- 修改約束 
-- ALTER TABLE 表名 CHANGE 舊名字  新名字  列屬性[] 
ALTER TABLE teacher1 CHANGE age age1 INT(1)  
-- 字段重名名
-- 刪除表的字段: ALTER TABLE 表名 DROP 字段名 
ALTER TABLE teacher1 DROP age1

刪除

– 刪除表(如果表存在再刪除) DROP TABLE IF EXISTS teacher1

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章