MySQL的数据库由各种表构成。表里包含被输入数据库的信息,基本上,你可以根据需要存储的数据创建任何一种表。创建一个表只需要数分钟,尤其是如果你只要存储几项不同的条目。下文将教你如何创建表。 ## 步骤 ### 1 打开数据库。 想要创建一个表,你必须先有一个存储表的数据库。你可以在MySQL命令行键入 USE 库名 ,打开数据库。 如果你不记得数据库的名称,可以键入 SHOW DATABASES; ,在MySQL服务器上显示所有数据库。 如果你还未创建数据库,可以键入 CREATE DATABASE 库名;.,创建一个数据库。数据库的名称不可以有空格。 ### 2 了解基本的数据类型。 每一项条目都以特定的数据类型存储在表里。这样,MySQL就能通过不同的方式使用它们。至于要用哪一种数据类型,则取决于表的需要。虽然还有更多的数据类型,但以下列出的几种足以让你创建最基本及实用的表: INT — 整数类型,常用在识别号码(ID)字段。 DECIMAL — 用来存储十进制值,允许用户指定十进制数字的数目和小数点后的数字位数。例如: DECIMAL(6,2)规定了存储的值不会超过 6位数字,并且小数点后不超过 2位。你输入的数字将被存作 “0000.00”。 CHAR —保存文字和字符串。你通常需要指定字符串的长度限制,比如CHAR(30)规定最多输入30个字符。比指定长度大的值将被截短,而比指定长度小的值将会用空格作填补。你也可以用VARCHAR,根据实际输入内容改变字符串长度(最多255个字符)。电话号码通常以VARCHAR存储,因为它们多含有符号,数字也无需用于计算(加、减等) [1] 。 DATE — 以YYYY-MM-DD(年月日)的格式保存日期。如果你需要存储他人的年龄,请用这个数据类型输入出生日期,而非直接输入真实年龄,否则你每年都需要更新条目。[2] ### 3 创建表。 想要在命令行创建表,你需要以一句命令创建所有字段。你可以用CREATE TABLE命令创建表,然后输入表里的信息。比如说,如果你想创建一个基本的员工记录,那就输入以下命令: CREATE TABLE 员工 (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 姓氏 VARCHAR(20), 名字 VARCHAR(20), 电话号码 VARCHAR(20), 出生日期 DATE) INT NOT NULL PRIMARY KEY AUTO_INCREMENT 将为每一位被添加到记录的员工创建一个识别号码(ID)。号码会自动递增,方便你在进行其它操作时引用有关数据。 虽然VARCHAR 允许你根据实际输入内容缩减字符串长度,但你也可以设定一个限制,让用户无法输入太长的字符串。在上述例子中,名字和姓氏分别被限制最多输入20个字符。 注意,电话号码必须存为VARCHAR,才能正确处理符号。 ### 4 确认你的表创建正确。 表建好后,你会收到创建成功的信息。现在,你可以使用DESCRIBE 命令,确认你已涵盖所有想要的字段,并设置了正确的数据类型。键入 DESCRIBE 库名;,从出现在荧幕上的图表中检查表的结构。 ### 5 用PHP创建表。 如果你透过网络服务器用PHP管理MySQL数据库,也可以用简单的PHP文件创建表。假设你的MySQL服务器已有数据库,只要输入以下代码,将连接信息换成你自己的信息,就能创建和步骤3一样的表: <?php $connection=mysqli_connect({{samp|server}},{{samp|user}}, {{samp|password}}, {{samp|database}}); if (mysqli_connect_errno()) { echo "无法连接 MySQL: " . mysqli_connect_error(); } $sql = "CREATE TABLE 员工 ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, 姓氏 VARCHAR(20), 名字 VARCHAR(20), 电话号码 VARCHAR(20), 出生日期 DATE )"; if (mysqli_query($connection,$sql)) { echo "员工表创建成功"; } else { echo "创建表出错: " . mysqli_error($connection); } ?> ## 步骤 ### 1 把单一条目添加到表。 你可以用命令行直接将数据输入表。输入INSERT INTO,以一句命令输入单一条目的所有数据到相关字段: INSERT INTO employees (id, 姓氏, 名字, 电话号码, 出生日期) VALUES (NULL, '王', '小明', '(555)555-5555', '1980-01-31'); 在ID字段输入NULL,每添加一个条目,ID就会自动递增1,成为下一个ID号码。 确保你输入的每个值都用单引号(')括起来。 ### 2 同时添加多个条目。 如果你拥有所有数据,可用一个 INSERT INTO命令输入多个条目。只需用逗号分开每一组数据: INSERT INTO 员工 (id, lastname, firstname, phone, dateofbirth) VALUES (NULL, '王', '小明', '(555)555-5555', '1980-01-31'), (NULL, '张', '小丽', '(555)555-5551', '1981-02-28'), (NULL, '李', '大成', '(555)555-5554', '1970-01-31'); ### 3 显示你的表。 输入几个条目后,你可以显示自己创建的表,看看你输入的所有数据,检查是否遗漏任何信息,或是否误把某个数据输入到错误的字段。想要显示上面创建的表,键入 SELECT * FROM 员工。 你可以过滤搜索结果,进行更高级的显示操作。例如,想要显示按出生日期分类的表,你可以键入 SELECT 姓氏, 名字, 出生日期 FROM 员工 ORDER BY 出生日期。 你可以在命令的末尾添加DESC ,以相反的顺序显示搜索结果。 ### 4 使用HTML表格输入数据。 你可以用其它方法把数据添加到新创建的表。其中一个最常见的方法就是使用网页上的表格。你可以参阅学习PHP和MySQL,学习如何创建基本的网页表格来输入数据。