生活知识网

主页 > 电子产品 >

如何在MySQL中创建数据库

2024-01-29 19:22 电子产品

方法 1创建和管理数据库

1

在MySQL命令行中,输入命令CREATE DATABASE <DATABASENAME>;。 把命令中的<DATABASENAME>替换为你的数据库的名称。其中不能包含空格。

  • 例如,要创建包含所有美国各州的数据库,可以输入CREATE DATABASE us_states;
  • 注意:命令不必以大写字母输入。
  • 注意:所有MySQL命令必须以";"结束。如果忘记了输入分号,可以在下一行中输入";"让前一命令得到处理。

  • 2

    输入命令SHOW DATABASES;列出所有已保存的数据库。除了你所创建的数据库外,你还将看到一个mysql数据库和一个test数据库。当前你可以忽略它们。

  • 3

    创建数据库后,你需要在对其进行编辑前先选中它。输入命令USE us_states;。你将看到信息Database changed,则你可以确认当前的活跃数据库是us_states

  • 4

    数据表用于保存数据库中的信息。要创建数据表,你需要在初始命令中输入数据表的所有格式化信息。输入以下命令创建数据表:CREATE TABLE states (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, state CHAR(25), population INT(9));。这将创建名为"states"且包括以下三个域的数据表:idstatepopulation

    • INT命令将使得id域只能保存数字(整数)。
    • NOT NULL命令保证id域不能为空。
    • PRIMARY KEY则指定id域作为数据表的键域。作为键域的域不能包含重复的数据。
    • AUTO_INCREMENT命令将自动分配递增的值到id域,尤其是将自动分配数字到对应域中。
    • CHAR(字符)和INT(整数)命令指定相关域中可存储的数据类型。命令旁的数字则指定对应域中可以包括多少字符或多大的整数。

  • 5

    我们现在已经创建了数据表,可以开始输入你的数据了。使用以下命令输入你的第一条记录:INSERT INTO states (id, state, population) VALUES (NULL, ‘Alabama’, ‘4822023’);

    • 该命令将让数据库把所输入的信息保存到数据表对应的三个域中。
    • 因为id域受到命令NOT NULL的限制,输入NULL作为它的值的话,由于AUTO_INCREMENT命令的作用,将会自动强制其值递增1。

  • 6

    你可以通过一条命令创建多条记录。要输入下三条记录,可以使用以下命令:INSERT INTO states (id, state, population) VALUES (NULL, ‘Alaska’, ‘731449’), (NULL, ‘Arizona’, ‘6553255’), (NULL, ‘Arkansas’, ‘2949131’);

    • 这将创建如下数据表:

  • 7

    现在我们已经创建了基本的数据库,你可以输入查询语句获取特定的查询结果。首先输入命令:SELECT * FROM us_states;。该命令将返回整个数据库,因为命令中使用了"*",表示"全部"。

    • 要进行高级查询:输入以下命令:SELECT state, population FROM us_states ORDER BY population;。该命令将返回按照人口排序而非字母排序的包括州和人口数两列的一个数据表。其中id域将不会被现实,因为命令中只要求查询statepopulation记录。
    • 要按照人口逆向排序列出州记录,输入以下命令SELECT state, population FROM us_states ORDER BY population DESC;。其中的DESC命令将按照递减顺序对记录进行排列,即按照数值由高到低而非由低到高排列。

  • 方法 2继续使用MySQL

    1

    了解如何在家中的计算机上安装MySQL。

  • 2

    如果你需要删减已经过时的旧数据库,可以参考该指南。

  • 3

    学习PHP和MySQL可以让你根据自己的兴趣或工作需要创建强大的网站。

  • 4

    定期备份你的数据总是有必要的,尤其是对于重要的数据库。

  • 5

    如果数据库的使用目的发生了变化,你需要调整其结构来处理不同的信息。该指南将为你提供帮助。

  • 小提示

    • 以下为常用的数据类型:(要获得相关信息的完整列表,查看mysql文档http://dev.mysql.com/doc/)
      • CHAR(length) - 固定长度字符串
      • VARCHAR(length) - 最大长度为length的可变长度字符串
      • TEXT - 最大长度为64KB的文本大小的可变长度字符串。
      • INT(length) - 最大为length位数字的32位整数(对于负数,'-'也被算作一位'数字'。)
      • DECIMAL(length,dec) - 对多总共可现实length位字符的十进制小数。其中dec域指定最多可允许的小数位。
      • DATE - 日期值(年,月,日)
      • TIME - 时间值(时,分,秒)
      • ENUM("value1","value2", ....) - 枚举值列表。
    • 以下为一些可选参数:
      • NOT NULL - 必须在指定域中提供一个值。该域不能留空。
      • DEFAULT default-value - 如果没有指定值,default-value将赋予给该域。
      • UNSIGNED - 对于数值域,确保其中的数值不为负数。
      • AUTO_INCREMENT - 每次有新的一行记录添加到数据表中时,该域的值将自动递增。

    栏目导航