Skip to content

My SQL學習過程

CREATE DATABASE `sql_tutorial`; -- 建立database
SHOW DATABASES; -- 顯示database
DROP DATABASE  `sql_tutorial`; -- 刪除database
USE `sql_tutorial`; -- 使用database

CREATE TABLE `student`(  -- 創建表格
    `student_id` INT PRIMARY KEY, -- INT整數
    `name` VARCHAR(20), -- VARCHAR字串(長度)
    `major` VARCHAR(20)
);

DESCRIBE `student`; -- 顯示表格屬性
DROP TABLE `student`; -- 刪除表格

ALTER TABLE `student` ADD gpa DECIMAL(3,2); -- 在表格中插入名子為gpa的屬性 DECIMAL浮點數(位數,小數點後幾位)
ALTER TABLE `student` DROP COLUMN gpa; -- 在表格中刪除屬性

INSERT INTO `student` VALUES(1,'姓名1','文字1');  -- 插入資料
INSERT INTO `student` VALUES(2,'姓名2','文字2');  -- 插入資料2
INSERT INTO `student`(`name`,`major`,`student_id`) VALUES('姓名3','文字3',3);  -- 插入資料3
INSERT INTO `student`(,`major`,`student_id`) VALUES('文字4',4);  -- 插入資料4
INSERT INTO `student` VALUES(5,'姓名5',NULL);  -- 插入資料5
SELECT * FROM `student`; -- 顯示儲存的資料

-- conostraints 限制 約束

CREATE TABLE `student2`(  -- 創建表格
    `student_id` INT AUTO_INCREMENT, 
    `name` VARCHAR(20) NOT NULL,  -- 不可為空 
    `major` VARCHAR(20) UNIQUE, -- 不可重復
    PRIMARY KEY(`student_id`) -- 設為主要key
    -- DEFAULT '預設文字'  可將空白格預設字設為''裡的文字
);

SELECT * FROM `student2`;
DROP TABLE `student2`; -- 刪除表格

INSERT INTO `student2` VALUES(1,'姓名1','文字1');  -- 插入資料
INSERT INTO `student2` VALUES(1,NULL,'文字1');  -- 會報錯(不能為空)
INSERT INTO `student2` VALUES(1,'','文字1');  -- 會報錯