top
Loading...
用MySQL創建數據庫和數據庫表

了解了一些最基本的操作命令后,我們再來學習如何創建一個數據庫和數據庫表。

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;
(e129)
作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗