jjzjj

relationship

全部标签

mysql - 如何表示分类的多对多数据库关系,其中类别特定于关系的一侧

我正在构建一个数据库来管理项目分配,给我带来特别麻烦的一个部分是为他们正在进行的每个项目分配职位。要求一名员工可以同时参与多个项目一个项目有多个员工一个项目有多个职位一名员工在该项目的一个职位上工作多个员工可以在一个项目中以相同的职位工作我不确定如何使用表格表示它;我想出的每个布局要么使员工能够以不同项目的职位从事同一个项目,要么他们能够以两个不同的职位从事同一个项目。示例图基本上,我有三个表:表格项目项目名称(唯一)项目编号员工员工姓名(唯一)员工ID职位名称职位项目ID(Title-ProjectID唯一)标题ID然后是一个交叉引用表,称为Assignments。到目前为止,我为A

mysql - 遇到 mysql 关系问题?

我需要两个表,一个使用三个表显示一对多关系,另一个表显示多对多关系。我设法完成了前2个查询,一个是只涉及一个表的查询,另一个是一对多涉及2个表的查询。单表查询:SELECTLastName,FirstName,CityFROMCustomerWHERECity='Lutherville-Timonium'涉及2个表的一对多:SELECTb.BrandName,m.ModelNameFROMBrandb,ModelmWHEREb.BrandID=m.BrandID这是我的代码:DROPDATABASEIFEXISTSFinalProject;CREATEDATABASEIFNOTEXIS

php - Laravel 多对多关系 - 检索模型

如果我们有这样的事情:用户编号姓名作用编号姓名购物编号姓名角色用户角色编号用户编号商店用户店铺编号用户编号快速:商店---商店用户---用户---角色用户---角色我们希望SHOP1的所有USER都具有ROLEadmin。我们怎样才能做到这一点?所有来自SHOP1的用户:$shop=Shop::find($shopId);$shop->users()->get();像这样的东西会很好:$shop=Shop::find($shopId);$shop->users()->roles->()->where('name','Admin')->get(); 最佳答案

php - 识别关系相对于非识别关系的优缺点,反之亦然

让我们想象一下现实世界中简单的customer-loan关系场景,没有客户的贷款是不可能存在的,因此逻辑上的关系应该是多对一识别关系以下结构:CREATETABLE`customer`(`id`INTNOTNULLAUTO_INCREMENTPRIMARYKEY,`name`VARCHAR(50))ENGINE=InnoDB;CREATETABLE`loan`(`id`INTNOTNULLAUTO_INCREMENT,`customer_id`INTNOTNULL,`amount`FLOAT,`currency`VARCHAR(10),PRIMARYKEY(`id`,`customer

mysql - 无法与 phpMyAdmin 建立关系

每当我尝试建立关系时,我只会收到一个空的弹出窗口,什么也没有发生...我该如何解决这个问题? 最佳答案 我遇到了同样的问题。修复:addindextothereferencedcolumn转到表结构,然后单击索引一次。然后,如果您在左侧菜单中选择表的索引,就会看到它已列出。我刷新了整个页面。然后转到设计器并添加关系。在看到线条出现之前,我不得不再次刷新整个页面。 关于mysql-无法与phpMyAdmin建立关系,我们在StackOverflow上找到一个类似的问题:

php - Laravel 使用 belongstoMany 从 ID 获取模型

我正在使用Laravel4构建应用程序,但数据透视表存在一些问题。有3个表Categories,Products,products_categories(pivot)类别模型publicfunctionproduct(){return$this->belongsToMany('Product','products_categories');}产品型号publicfunctioncategory(){return$this->belongsToMany('Category','products_categories');}products_categories表有product_id和c

php - 拉维尔 4 : How to get selected/specific columns in a many to many relationship?

我想获取与特定对话相关的所有用户。数据透视表有user_id和conversation_id列。user_id和conversation_id分别引用user和conversations表中的id列。所以我做到了:Conversations::find($conv_id)->users()这没问题,但它会返回相关用户的所有详细信息。根据上面的代码,如何只返回用户的某些列,例如id和name?附言此外,我知道我可以通过为数据透视表创建一个模式来做到这一点,但这似乎有点矫枉过正。为数据透视表创建模式是一种好习惯吗?我试过了Conversations::select('id','name')

mysql - 显示MySQL中两列之间的所有关系

我有一个表,其中包含如下数据:第1列--第2列A--ZA--Y乙--乙我正在MySQL中寻找一种方法来汇总这些数据,以便我得到下表来显示组关联:第1列--第2列A,B--Z,Y我可以使用group_concat函数一次将一列组合在一起,但我需要将两列组合在一起以显示关系。非常感谢任何建议! 最佳答案 尝试INFORMATION_SCHEMA.TABLE_CONSTRAINTS和INFORMATION_SCHEMA.KEY_COLUMN_USAGE。引用:http://dev.mysql.com/doc/refman/5.0/en/k

php - Laravel:如何使用多个数据透视表关系

我不熟悉一起定义关系和框架,我只是习惯了原始SQL。做了我的功课(google+Laravel文档),但我认为我只是没有正确理解它。相关资料如下:用户表:Table:Usersid-int(autoincrement)username-varchar挑战表:Table:Challengesid-int(autoincrement)name-varchar用户挑战链接TableUser_challenge_linksid-int(autoincrement)user_id-intchallenge_sub_categories_id-int挑战_子_类别TableChallenge_su

php - 具有 N :M relationship (including relationship) 的重复表

在现有的网络应用程序(PHP/MySQL)上工作,我得出了这一点:我有2个表存储名称和类型ID。它们之间的关系是NN我之间有另一个表。(见图)我有一个名为“category”的最后一个表,没有图片。我要做的是:将id_category=1的契约(Contract)和客户复制到具有相同值且id_category=3的契约(Contract)和客户。以及复制它们之间的关系。到目前为止,我已经设法将所有契约(Contract)和客户分开,使用:INSERTINTOcontract(t_name,id_category)SELECTt_name,'3'WHEREid_category=2INS