MySQL中庫、表建立需注意事項
MySQL中,我們在建立庫和表時,會有一些疏忽,造成錯誤難以檢查。
我建立了一個名為python3的資料庫以及名為students的表,資料庫如下:
mysql> SHOW CREATE DATABASE python3;
+----------+------------------------------------------------------------------+
| Database | Create Database |
+----------+------------------------------------------------------------------+
| python3
+----------+------------------------------------------------------------------+
1 row in set (0.00 sec)
但是我們想顯示建立表資訊,卻出現如下錯誤:
mysql> SHOW CREATE TABLE students;
ERROR 1046 (3D000): No database selected
出現這種情況是因為沒有切換到當前資料庫,應該加上use python3:
mysql> use python3;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
這時已經切換到當前資料庫了。
關於建立表的資訊:
# 表students中有四個引數:number(文字格式,9位);name(可變文字,最高20位),
# age(整型);birth(DATE時間格式)
CREATE TABLE students( number CHAR(9), name VARCHAR(20), age INT, birth DATE );
在表格裡新增資訊,三種方式:
INSERT INTO students(number,name,age) VALUES('201812101','吳彥祖',26); #三個引數,缺少的一個會用null補上 INSERT INTO students VALUES('201812102','陳冠希',25,'1989-11-11'); #四個引數 INSERT INTO students VALUES('201812103','吳磊',19,'1995-10-01'),('201812104','張學友',40,'1980-11-12'),('201812105','陳奕迅',37,'1988-12-09');
執行結果:
mysql> SELECT * FROM students;
+-----------+-----------+------+------------+
| number | name | age | birth |
+-----------+-----------+------+------------+
| 201812101 | 吳彥祖 | 26 | NULL |
| 201812102 | 陳冠希 | 25 | 1993-10-19 |
| 201812103 | 吳磊 | 19 | 1995-10-01 |
| 201812104 | 張學友 | 40 | 1980-11-12 |
| 201812105 | 陳奕迅 | 37 | 1988-12-09 |
+-----------+-----------+------+------------+
5 rows in set (0.04 sec)
增加表格資訊時,除了第一個方法可以少賦值引數,其他兩種都得一一對應。DATE的格式是:'1993-10-19',注意有'-'。