【问题标题】:How to structure a simple database如何构建一个简单的数据库
【发布时间】:2011-03-31 13:40:33
【问题描述】:

我想构建一个如下性质的数据库:

有不同类型的人,每个人都做很多工作,例如:

清洁剂:干净的厕所,干净的厨房
女佣:洗衣服,做早餐,做午餐
园丁:种花、浇花

我还将拥有一个 MySQL 数据库,其中包含所有清洁工、女佣、园丁等。用户将他需要的工作写入 HTML 表单,然后 PHP 文件将确定谁来完成所需的工作,然后选择最适合这份工作的人。

如何构建上述数据库?我像上面那样做吗?

PHP 如何“将它们组合在一起”?我必须使用数组吗?

我应该将此数据库直接放入 PHP 代码中还是放入单独的文本文件(或其他类型的文件)中?

谢谢大家!

【问题讨论】:

    标签: php database database-design


    【解决方案1】:

    如另一篇文章所述,您需要先学习基础知识,然后再深入研究复杂的事物。网络上有大量教程,易于理解和入门。

    您可以从this tutorial 开始了解如何使用 MySQL 和 PHP,然后您可以将以下架构用于您的 Web 应用程序。

    people
      people_id (PK)
      name
    
    roles
      role_id (PK)
      role_name
    
    tasks
      task_id (PK)
      role_id (FK)
      task_desc
    
    people_roles
      pr_id (PK)
      people_id (FK)
      role_id (FK)
    
    • people -- 所有员工/人员及其详细信息

    • roles -- 所有可用角色

    • tasks -- 分配给每个角色的任务,roletask 具有一对多关系(参见 FK?)

    • people_roles -- 这是一个在peopleroles 之间建立多对多关系的链接表,因此园丁 可以充当做饭。如果你想这样分配。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      你需要先学会走路才能跑。

      我会先做一些基本的 PHP/MySQL 教程,让自己熟悉数据操作的基础知识。然后也许为了加快生产使用框架,CakePHP 会根据我的建议基于它强大的自动魔术 CRUD(创建、读取、更新、删除 - 其他需要阅读的内容:)) .

      【讨论】:

      • 冒着引发框架大战的风险,我不推荐 CakePHP,因为它现在已经过时并且已经被分叉成 Lithium。也许考虑 Zend 框架,因为它更容易被普遍识别。我最喜欢的是 Agavi (agavi.org)
      • 如果不先学习一种可以处理数据的语言,那么学习 SQL 并没有多大意义 :)
      • @Chris_M。 SQL IS 是一种处理数据的语言。事实上,它几乎是唯一的一个。
      • 这是一个很好的评论,但它没有回答 OP。
      • 不,你说得对,结构化查询语言说明了一切。但是您不仅仅依靠 SQL 来格式化和显示数据……
      猜你喜欢
      • 2021-06-05
      • 1970-01-01
      • 2017-12-27
      • 2011-12-27
      • 1970-01-01
      • 2011-01-19
      • 1970-01-01
      • 2015-06-27
      • 1970-01-01
      相关资源
      最近更新 更多