设计数据表

我们先定义一个数据表,以下是本章节示例会用到的数据表SQL文件:

  1. CREATE TABLE `user` (
  2. `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'user id',
  3. `name` varchar(45) DEFAULT NULL COMMENT 'user name',
  4. `status` tinyint DEFAULT NULL COMMENT 'user status',
  5. `age` tinyint unsigned DEFAULT NULL COMMENT 'user age',
  6. PRIMARY KEY (`id`)
  7. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

应用数据表

我们需要把这个数据表应用到mysql数据库中,便于后续的使用。如果你本地没有mysql数据库服务,那么这里使用docker运行一个吧:

  1. docker run -d --name mysql \
  2. -p 3306:3306 \
  3. -e MYSQL_DATABASE=test \
  4. -e MYSQL_ROOT_PASSWORD=12345678 \
  5. loads/mysql:5.7

启动后,连接数据库,将数据表创建sql语句应用进去:

  1. $ mysql -h127.0.0.1 -p3306 -uroot -p
  2. mysql: [Warning] Using a password on the command line interface can be insecure.
  3. Enter password:
  4. Welcome to the MySQL monitor. Commands end with ; or \g.
  5. Your MySQL connection id is 57
  6. Server version: 9.0.1 Homebrew
  7. Copyright (c) 2000, 2024, Oracle and/or its affiliates.
  8. Oracle is a registered trademark of Oracle Corporation and/or its
  9. affiliates. Other names may be trademarks of their respective
  10. owners.
  11. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  12. mysql> use test;
  13. Database changed
  14. mysql> CREATE TABLE `user` (
  15. -> `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'user id',
  16. -> `name` varchar(45) DEFAULT NULL COMMENT 'user name',
  17. -> `status` tinyint DEFAULT NULL COMMENT 'user status',
  18. -> `age` tinyint unsigned DEFAULT NULL COMMENT 'user age',
  19. -> PRIMARY KEY (`id`)
  20. -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  21. Query OK, 0 rows affected, 2 warnings (0.02 sec)
  22. mysql>

学习小结

在接口开发之前先设计数据库表是比较好的开发习惯。这里我们使用的是mysql数据库,是需要先搭建/运行数据库服务。

在设计完成数据库表后,我们下一步可以使用脚手架工具自动去生成对应的数据库操作相关文件。