MySQL的数据库由各种表构成。表里包含被输入数据库的信息,基本上,你可以根据需要存储的数据创建任何一种表。创建一个表只需要数分钟,尤其是如果你只要存储几项不同的条目。下文将教你如何创建表。

部分 1
部分 1 的 2:

创建表

  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管理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);
    }
    ?>
    
    广告
部分 2
部分 2 的 2:

把条目添加到表

  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. 你可以用其它方法把数据添加到新创建的表。其中一个最常见的方法就是使用网页上的表格。你可以参阅学习PHP和MySQL,学习如何创建基本的网页表格来输入数据。
    广告


关于本wikiHow

Tyrone Showers
共同创作者是 :
技术专家
这篇文章的共同创作者是 Tyrone Showers. Tyrone Showers是一位技术专家,在美国华盛顿州西雅图共同经营IT咨询公司Taliferro Group。他从业逾35年,精通应用程序接口(API)设计、电子商务、操作效率和网站开发。Tyrone获得了德锐技术学院的计算机科学理科学士学位。 这篇文章已经被读过24,457次。
广告