代码改变世界

用MySQL创建数据库和数据库表

2013-07-09 16:27  Andy Ge  阅读(286)  评论(0编辑  收藏  举报

1、使用SHOW语句找出在服务器上当前存在什么数据库:

mysql> SHOW DATABASES; 
+----------+ 
| Database | 
+----------+ 
| mysql | 
| test | 
+----------+ 
3 rows in set (0.00 sec)

2、创建一个数据库abccs

mysql> CREATE DATABASE abccs; 

注意不同操作系统对大小写的敏感。 3、选择你所创建的数据库

mysql> USE abccs 
Database changed 

此时你已经进入你刚才所建立的数据库abccs. 4、 创建一个数据库表 首先看现在你的数据库中存在什么表:

mysql> SHOW TABLES; 
Empty set (0.00 sec) 

说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable: 我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。

mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), 
-> birth DATE, birthaddr VARCHAR(20)); 
Query OK, 0 rows affected (0.00 sec)
 

由于name、birthadd的列值是变化的,因此选择VARCHAR,其长度不一定是20。可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。);性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);birth列则使用DATE数据类型。 创建了一个表后,我们可以看看刚才做的结果,用SHOW TABLES显示数据库中有哪些表:

mysql> SHOW TABLES; 
+---------------------+ 
| Tables in menagerie | 
+---------------------+ 
| mytables | 
+---------------------+
 

5、显示表的结构:

mysql> DESCRIBE mytable; 
+-------------+-------------+------+-----+---------+-------+ 
| Field | Type | Null | Key | Default | Extra | 
+-------------+-------------+------+-----+---------+-------+ 
| name | varchar(20) | YES | | NULL | | 
| sex | char(1) | YES | | NULL | | 
| birth | date | YES | | NULL | | 
| deathaddr | varchar(20) | YES | | NULL | | 
+-------------+-------------+------+-----+---------+-------+ 
4 rows in set (0.00 sec)
 

6、 往表中加入记录 我们先用SELECT命令来查看表中的数据: mysql> select * from mytable; Empty set (0.00 sec) 这说明刚才创建的表还没有记录。 加入一条新记录:

mysql> insert into mytable 
-> values (′abccs′,′f′,′1977-07-07′,′china′); 
Query OK, 1 row affected (0.05 sec)
 

再用上面的SELECT命令看看发生了什么变化。我们可以按此方法一条一条地将所有员工的记录加入到表中。 7、用文本方式将数据装入一个数据库表 如果一条一条地输入,很麻烦。我们可以用文本文件的方式将所有记录加入你的数据库表中。创建一个文本文件“mysql.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以在CREATE TABLE语句中列出的列次序给出,例如:

abccs	f	1977-07-07	china   
mary	f	1978-12-12	usa 
tom	m	1970-09-02	usa

使用下面命令将文本文件“mytable.txt”装载到mytable表中:mysql> LOAD DATA LOCAL INFILE "mytable.txt" INTO TABLE pet; 再使用如下命令看看是否已将数据输入到数据库表中:mysql> select * from mytable;