## 3.3 创建和使用数据库

[3.3.1 创建和选择数据库](creating-database.html)
[3.3.2 创建表](creating-tables.html)
[3.3.3 将数据加载到表中](loading-tables.html)
[3.3.4 从表中检索信息](retrieving-data.html)

[](<>)[](<>)[](<>)

一旦您知道如何输入 SQL 语句，您就可以访问数据库了。

假设您家中有几只宠物（您的动物园），并且您想跟踪有关它们的各种类型的信息。您可以通过创建表格来保存您的数据并使用所需信息加载它们来做到这一点。然后，您可以通过从表格中检索数据来回答有关您的动物的不同类型的问题。本节介绍如何执行以下操作：

-   创建数据库

-   创建表

-   将数据加载到表中

-   以各种方式从表中检索数据

-   使用多个表

    动物园数据库很简单（故意地），但不难想到可能使用类似类型数据库的现实情况。例如，农民可以使用这样的数据库来跟踪牲畜，或者兽医可以使用这样的数据库来跟踪患者记录。可以从 MySQL 网站获得包含以下部分中使用的一些查询和示例数据的动物园分布。它有两种压缩形式**柏油**文件和 Zip 格式在<https://dev.mysql.com/doc/>.

    使用[`显示`](show.html)语句找出服务器上当前存在哪些数据库：


```
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql    |
| test     |
| tmp      |
+----------+
```

这`mysql`数据库描述用户访问权限。这`测试`数据库通常可用作用户尝试的工作空间。

该语句显示的数据库列表在您的机器上可能会有所不同；[`显示数据库`](show-databases.html)如果您没有权限，则不会显示您没有权限访问的数据库[`显示数据库`](show-databases.html)特权看见[第13.7.7.14节“显示数据库声明”](show-databases.html).

如果`测验`数据库已存在，请尝试访问它：

```
mysql> USE test
Database changed
```

[`使用`](use.html)喜欢`退出`，不需要分号。（如果愿意，可以用分号终止此类语句；它没有坏处。）这个[`使用`](use.html)声明在另一方面也很特别：它必须在一行上给出。

你可以使用`测验`数据库（如果您有权访问它）以获取下面的示例，但您在该数据库中创建的任何内容都可以被有权访问它的任何其他人删除。因此，您可能应该向MySQL管理员申请使用自己数据库的权限。假设你想打电话给你的`动物园`.管理员需要执行如下语句：

```
mysql> GRANT ALL ON menagerie.* TO 'your_mysql_name'@'your_client_host';
```

哪里`你的名字`是否将MySQL用户名分配给您，以及`你的客户`是连接到服务器的主机。
