今天在命令行提示符下全程进行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的函数那些难的还在后面呢。