|
|
1
8
似乎您正在描述一个场景,其中用户对数据的视图(对象有名称,我不在乎它们是什么类型)与您用于存储数据的模型不同。
如果是这样,并且假设您对数据库对象有一些控制权,我可能会创建一个
SQL Server上的示例:
那你可以
|
|
|
2
1
您唯一真正的解决方案基本上归结为相同的事情:为每个特定的表编写显式语句
对于SQL Server,创建视图的语法为:
你可以这样问:
但是,您拥有的是一个基本的表继承模式,但是它的实现不正确,因为:
|
|
|
3
0
|
|
|
4
0
你不能。为什么不给他们起同样的名字,或者把那个名字拉回到
|
|
|
5
0
看来你有几个选择。可以使用配置文件或“架构”表。您可以重命名表,使ye列的名称始终相同。你可以让代码中的类知道它的表。您可以使您的体系结构不那么通用,并允许数据访问层了解它正在访问的数据。
|
|
|
6
0
如果没有第一个
但只要稍微考虑一下,用户看到的“标识符”是不是
不得不
|
|
|
8
0
您可以查看一个表,它告诉您数据库中所有表(和列属性)的属性。 在postgres中,这类似于pg_stat_alltables,我认为在sql server中也有类似的东西。你可以查询这个并找出你需要的,然后基于这个信息构造一个查询。。。 编辑:很抱歉重新阅读这个问题,我认为这不是你所需要的。-我以前解决过一个类似的问题,有一个代理键表-一个包含所有id的表和一个类型id,然后是一个包含该表主键的serial/identity列-这是您应该使用的id。。。然后可以创建一个视图,该视图根据该表中的类型id查找其他信息。 “entity ref”表将包含列“entityref”(PK)、“id”、“type id”等。。。(假设您不能重新构造以使用继承) |
|
|
Johnny T · 基于当前值的SQL合并表[重复] 1 年前 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 1 年前 |
|
ojek · 如何对SQL结果进行分组和编号? 1 年前 |
|
|
senek · 如何在PL/SQL中将选择结果(列)放入数组中 1 年前 |
|
|
Sax · 规范化Google表格(第一步) 1 年前 |
|
|
Jatin · 检索卷计数的动态sql抛出错误语法错误[关闭] 1 年前 |
|
|
Andrus · 如何在sql中查找第二个匹配项 1 年前 |