我正在尝试在C#中创建一个涉及两个单独表的视图,其中一个字段在两个表中具有相同的名称。无法更改列名,也不能仅为视图创建列的新名称。这是因为无法以任何方式修改数据。我收到了以下错误:
每个视图或函数中的列名必须是唯一的。
视图中的列名'Child_ID'或函数'Testing'被多次指定。
在线搜索显示,这是因为所有列都必须是唯一的。但是,当我尝试在每个违规列之前添加相应的表名时,仍然会返回错误。有没有办法解决这个问题?我根本无法更改列名。
答案 0 :(得分:2)
为什么不使用专栏Aliases?
SELECT T1.Child_ID AS T1ChildID, T2.Child_ID AS T2ChildID,...
答案 1 :(得分:2)
好吧,如果Child_ID
在两个表中都有相同的值(我假设这是来自一个连接),那么你只需将其中一个保留。返回两者有什么意义?
如果Child_ID
有不同的值,那么首先我要问他们是否应该调用相同的东西,但假设有这个原因,请使用别名。
SELECT
Child_ID_FromTable1 = Table1.Child_ID,
Child_ID_FromTable2 = Table2.Child_ID
...
当多个表具有相同的列名时,您的查询构建器需要识别这种情况,并且: