今天在命令行提示符下全程進行MySQL的操作,實在是太不方便了。但沒有辦法,這種原始的方法是最好打基礎的。只有把基礎的命令、語法、方法熟練了之後,才能更好的應用。以後在可視化界面(Navicat)上操作就方便得多了。
creat table studentinfo( # 創建表單studentinfo是名稱
id int auto_increment, # id爲數字類型自動增加
i_name varchar(8) not null, # 變量名 字符串(8位)不允許爲空
i_phone varchar(11) not null, # 手機號碼 字符串(11位) 不允許爲空
i_id int default null, # 外鍵id 默認爲空
primary key(id), # 設置主鍵爲id
foreign key(i_id) references student(id) # 設置外鍵的匹配到student(id)這個主鍵去
其實還是比較簡單明瞭的,完全按照英語的語法邏輯進行。多個表單正常創建都沒什麼技術含量,主要的難點是多個表單之間的鏈接,主鍵外鍵的設置不要出錯了。
創建萬表單之後,就可以用show tables;查詢表單:
mysql> show tables;
+-----------------+
| Tables_in_test2 |
+-----------------+
| grade |
| student |
| studentinfo |
+-----------------+
3 rows in set (0.01 sec)
用desc語句查詢表單詳細信息:
mysql> desc grade;
+---------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| g_name | varchar(10) | NO | | NULL | |
| g_desc | varchar(10) | NO | | NULL | |
| g_create_time | date | YES | | NULL | |
+---------------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)
用select語句來查詢表單內容:
mysql> select * from grade;
+----+--------+--------+---------------+
| id | g_name | g_desc | g_create_time |
+----+--------+--------+---------------+
| 1 | 1801 | PHP | NULL |
| 2 | 1801 | Python | NULL |
| 3 | 1802 | PHP | NULL |
| 4 | 1801 | HTML | NULL |
| 5 | 1802 | Java | NULL |
| 6 | 1802 | Perl | NULL |
+----+--------+--------+---------------+
6 rows in set (0.00 sec)
用insert語句添加表單內容:
mysql> insert into grade(g_name, g_desc) values('1801', 'Python'), ('1802', 'PHP'), ('1801', 'HTML'), ('1802', 'Java'), ('1802', 'Perl');
Query OK, 5 rows affected (0.00 sec)
Records: 5 Duplicates: 0 Warnings: 0
其實這些命令都並不複雜,邏輯是很清楚的。只是我不一定記得住,但確實是理解了,操作也得出了正確的結果。後面的難點是表單的關聯、SQL的函數那些難的還在後面呢。