1. 程式人生 > >mysql筆記之修改

mysql筆記之修改

資料庫 資料型別

建立表

 MariaDB [oldboy]> CREATE TABLE student(sid INT,sname VARCHAR(20),sage TINYINT,sgender ENUM('m','f'),scomtime DATETIME);
 
 --int 整數  -2^31 ~ 3^31-1
 --varchar(20)  變長
 --char(20)     定長  
 --tinyint        整數  255
 --ENUM(‘m’,‘f’) 列舉型別 (男,女)
 --datetime       時間型別  年月日時分秒
 
 show create table stu;
 
 | stu   | CREATE TABLE `stu` (
   `sid` int(11) NOT NULL AUTO_INCREMENT COMMENT '學號',
   `sname` varchar(20) NOT NULL COMMENT '姓名',
   `sage` tinyint(3) unsigned DEFAULT NULL COMMENT '年齡',
   `sgender` enum('m','f') DEFAULT 'm' COMMENT '性別',
   `scomtime` datetime NOT NULL COMMENT '入學時間',
   PRIMARY KEY (`sid`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8   

以下選項會影響到資料的錄入

 -- not null  非空的
 --primary key  唯一且非空的
 --auto_increment  自增長  需要有 primary key 或者unique key
 --default      預設值
 --unsigned     非負數
 --comment ‘xx’  註釋

 show tables; --檢視當前資料庫下所有表
 show create table   --查看錶的建立語句
 desc stu;     --查看錶中列的定義資訊

修改表定義

重命名錶名
 MariaDB [oldboy]> show tables;
 +------------------+
 | Tables_in_oldboy |
 +------------------+
 | stu              |
 | student          |
 +------------------+
 MariaDB [oldboy]> ALTER TABLE stu RENAME stt;
 MariaDB [oldboy]> show tables;
 +------------------+
 | Tables_in_oldboy |
 +------------------+
 | stt              |
 | student          |
 +------------------+
 2 rows in set (0.00 sec)

新增列

 MariaDB [oldboy]> desc stt;
 +----------+---------------------+------+-----+---------+----------------+
 | Field    | Type                | Null | Key | Default | Extra          |
 +----------+---------------------+------+-----+---------+----------------+
 | sid      | int(11)             | NO   | PRI | NULL    | auto_increment |
 | sname    | varchar(20)         | NO   |     | NULL    |                |
 | sage     | tinyint(3) unsigned | YES  |     | NULL    |                |
 | sgender  | enum('m','f')       | YES  |     | m       |                |
 | scomtime | datetime            | NO   |     | NULL    |                |
 +----------+---------------------+------+-----+---------+----------------+
 5 rows in set (0.00 sec)
 
 MariaDB [oldboy]> alter table stt add stest int;
 Query OK, 0 rows affected (0.01 sec)               
 Records: 0  Duplicates: 0  Warnings: 0
 
 MariaDB [oldboy]> desc stt;
 +----------+---------------------+------+-----+---------+----------------+
 | Field    | Type                | Null | Key | Default | Extra          |
 +----------+---------------------+------+-----+---------+----------------+
 | sid      | int(11)             | NO   | PRI | NULL    | auto_increment |
 | sname    | varchar(20)         | NO   |     | NULL    |                |
 | sage     | tinyint(3) unsigned | YES  |     | NULL    |                |
 | sgender  | enum('m','f')       | YES  |     | m       |                |
 | scomtime | datetime            | NO   |     | NULL    |                |
 | stest    | int(11)             | YES  |     | NULL    |                |
 +----------+---------------------+------+-----+---------+----------------+
 6 rows in set (0.00 sec)