问题标签 [multi-table]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sql-server - 使用来自多个表的数据的 SQL 插入
我有四个表:Messages、MessageCategory、MessageStatus 和 MessageLevel。
MessageCategory、MessageStatus 和 MessageLevel 都只有三个字段:Identity(主键)、Code 和 Description。Messages 指的是这三个字段,并且还有一些其他的数据字段,包括 Identity(主键)MessageText 和 Order。身份字段是自动递增的字段。
我现在需要编写一个 SQL 脚本来为所有四个表添加一些默认数据。问题是,我需要创建一个脚本,该脚本将发送给客户,然后客户将执行此脚本。我无法编写更智能的代码来完成整个更新。虽然三个表只是简单的插入语句,但 Messages 表让我有些头疼。
我不能删除任何索引,也不能假设它从 1 开始计算主键。
所以,作为一个例子,她的一些数据:
消息需要这样的东西:
不过,那是行不通的。那么,让这个工作的诀窍是什么?(保持代码可读...)
不幸的是,我无权访问其他数据库。我可以对其进行测试,但一旦它似乎有效,这只是发送并祈祷它有效的问题......
django - Django 多表继承 VS 在模型中指定显式 OneToOne 关系
希望这一切都有意义:) 如有必要,我将通过评论进行澄清。另外,我正在尝试在这个问题中使用粗体文本,如果我(或你)发现它分散注意力,我会将其编辑掉。有了这个...
使用 django.contrib.auth 为我们提供了用户和组,以及其他我不能没有的有用的东西(比如基本消息传递)。
在我的应用程序中,我有几种不同类型的用户。一个用户只能是一种类型。这很容易由小组处理,但需要格外小心。但是,这些不同的用户在层次结构/关系中彼此相关。
让我们来看看这些用户:-
校长 - “顶级”用户
管理员 - 每个管理员向校长报告
协调员 - 每个协调员向管理员报告
除了这些之外,还有其他不直接相关的用户类型,但以后可能会相关。例如,“公司”是另一种类型的用户,可以有各种“产品”,产品可能由“协调者”监管。“买家”是另一种可能购买产品的用户。
现在所有这些用户都有各种其他属性,其中一些对所有类型的用户都是通用的,而另一些则只对一种用户类型不同。例如,所有类型的用户都必须有一个地址。另一方面,只有 Principal 用户属于“BranchOffice”。
上面提到的另一点是,用户只能是一种类型。
该应用程序还需要跟踪谁创建和/或修改了委托人、管理员、协调员、公司、产品等。(这是用户模型的另外两个链接。)
在这种情况下,使用 Django 的多表继承是不是一个好主意,如下所示:-
或者我应该这样做: -
请记住,还有其他通过外键关联的用户类型,例如:-
我知道 Django 确实在幕后使用一对一的关系进行多表继承。我只是没有足够的资格来决定哪种方法更合理。
mysql - 使用 Doctrine 在 MySQL 数据库上删除多表的语法是什么?
使用Doctrine,我试图根据从多个表中收集的数据删除单个表中的记录。
“companies_groups”是将“公司”链接到“组”的关联表。我想删除此表中链接到特定公司的所有记录,但只有链接到“公共”组的“companies_groups”记录才会被删除。
如果我用纯 SQL 编写它,它看起来像这样:
教义中的等价物是什么?我一直在挣扎和尝试一个小时左右。
目前我有这个:
(我的 Doctrine 模型是“companies_groups”表的“Company_group”和“groups”表的“Group”)
这会产生这个 SQL:
您可以看到生成的 SQL 在 DELETE 和 FROM 之间缺少“companies_groups”,并且限定符被删除(意味着“id”将不明确)。
让我知道我是否可以提供任何有用的其他信息。
django - Django Admin中具有多表继承的ValueError
我创建了两个继承模型条目的新类:
通过 admin.site.register 将这些新模型添加到管理员后,我在尝试通过管理员创建评论或折扣时收到 ValueError。添加条目工作正常。
错误信息:
/admin/reviews/discount/add/ 处的 ValueError 无法分配“''”:“Discount.discount”必须是“Discount”实例。请求方法:GET 请求 URL: http: //127.0.0.1 :8000/admin/reviews/discount/add/
异常类型:ValueError 异常值:
无法分配“''”:“Discount.discount”必须是“折扣”实例。异常位置:/Library/Python/2.6/site-packages/django/db/models/fields/related.py in set,第 211 行 Python 可执行文件:/usr/bin/python Python 版本:2.6.1
php - PHP SQL:匹配2个表之间的相应数据,而不过滤掉第一个表中的数据
我有 2 张桌子。为简单起见,“u”具有以下列
userid
divisionid
'd' 有以下内容:
Divisionid
名称
我没有创建这个表,否则我不会有这个问题。u.DIVISION可以为 NULL。d.DIVISION不能。
运行以下命令会创建适当的数据,但它也会过滤掉每个具有 NULL 的用户 ID。无论如何,是否仍然显示所有用户 ID,而不管他们的部门 ID 是什么,如果部门 ID 不为空,则显示部门的名称?
“选择用户 ID,d.NAME
FROM u,d
WHERE u.divisionid = d.divisionid
ORDER BY userid”
nhibernate - 使用 NHibernate 从多个表映射实体
我希望您可以通过以下问题帮助一些 NHibernate 新手。假设我们有两个表:Page 和 WorkPage。Page table 包含未版本化的数据,WorkPage 包含同一 Page 的版本化数据,即 Page 和 WorkPage 之间存在一对多的关系。
在代码中,我们有一个实体,其中包含 Page 和 WorkPage 表中的所有属性,而且这些属性是相当的——它们没有分组到版本化数据和非版本化数据的任何子实体中。
我如何使用 NHibernate 将这样的实体映射到这些表?
mysql - MySQL(MyISAM) - 将字段更新为来自不同表的两个字段中的最大值
我有两个表,t1
每个表t2
有两列 -id_user
和age
.
如果. t1.age
_ t1.age
_ t2.age
_ t1.age
_t2
更新前:
更新后:
sql - 多表查询
我有四张桌子:
- 人物
- arena_team
- arena_table_member
- arena_team_stats。
字符表有 guid,名称
arena_team 表有 arenateamid, name, type
arena_table_member 表有 guid(这与字符表中的相同), arenateamid
arena_team_stats 表有 arenateamid、rating、wins、wins2、played
如何获取角色所在的竞技场团队列表?我试过:
但它会返回 arena_team 表中的所有竞技场团队。
asp.net - 如何从 BLL 返回多表连接值
这个问题是关于我使用 DAL-BLL 架构为我的期末学校项目创建的 ASP.NET Web 服务。
我有一个存储过程,它是一个带有 2 个表的内部联接的选择查询。因此存储过程返回多表值。我的 DAL tableAdapter 方法之一访问此存储过程。如何检索 BLL 中的返回值?我是否必须创建一个类似于应该由存储过程返回的类结构?还是有直接的方法来实现相同的目标?非常感谢帮助。如果有人需要代码小程序以更好地理解,请告诉我。谢谢
以下是更多信息:我在 DAL 中使用 SQL 数据集 (.xsd)。所以我有一个名为“Insurance”的数据表,它有一个 tableAdapter。适配器中的一个查询引用了具有内部联接的存储过程。所以我的SP看起来像:
所以这个 SP 返回一个数据表,它将是内部连接中 2 个表的组合。如果我错了,请纠正我。
现在在我的 BLL 中,我有:
其中 insAdapter 是 insuranceTableAdapter 的一个实例
这会导致执行错误。我可以成功执行 SP,所以我认为问题只是我试图从 BLL 返回错误的数据表。请帮我解决这个问题。
sql - SQL:根据时间戳使用其他表中的值进行更新
我有以下问题:我想用另一个表 B 的列“SOURCE_VALUE”中的值更新表 A 的列“UPDATE_VALUE”。两个表都有一个时间戳列,表 A 中应该更新的值应该是具有最高时间戳的表 B 行之一小于/等于表 A 行的时间戳。
例如:
表 A:
表 B:
因此,在表 A 的第 1 行中,我想要表 B 的 VAL_1,因为该行的时间戳是表 B 的最高值,小于/等于表 A 中行的时间戳。对于表 AI 的第 2 行,需要第 4 行表 B 等等。完整的结果应如下所示:
表 A:
我正在使用 SQLite 3,但对 sql-query 的任何提示表示赞赏。
感谢您的时间和帮助,
杉