将列添加到视图所依赖的表时,我对带有命名字段的视图产生了非常意想不到的影响。
SQL:
SELECT dbo.AccessCustomFieldDepartment.AccessCustomFieldDepartmentID, dbo.AccessCustomFieldDepartment.AccessCustomField_StoreID,
dbo.AccessCustomFieldDepartment.AccessCustomField_ShopOwner, dbo.AccessCustomFieldDepartment.AccessCustomField_CVRnumber,
dbo.AccessCustomFieldDepartment.AccessCustomField_OpenMonToWed, dbo.AccessCustomFieldDepartment.AccessCustomField_OpenMonToThu,
dbo.AccessCustomFieldDepartment.AccessCustomField_OpenMonToFri, dbo.AccessCustomFieldDepartment.AccessCustomField_OpenMonToTue,
--..
--a bunch of other fields
--..
dbo.AccessUser.AccessUserAddress, dbo.AccessUser.AccessUserAddress2, dbo.AccessUser.AccessUserZip, dbo.AccessUser.AccessUserCity,
dbo.AccessUser.AccessUserCountry, dbo.AccessUser.AccessUserWeb
FROM dbo.AccessUser INNER JOIN
dbo.AccessCustomFieldDepartment ON dbo.AccessUser.AccessUserID = dbo.AccessCustomFieldDepartment.AccessCustomFieldDepartmentID
当其他人的代码对表AccessUser进行动态添加列时,服务器或其他东西会更改视图的sql!
例如:
dbo.AccessUser.AccessUserCountry, dbo.AccessUser.AccessUserWeb
更改为
dbo.AccessUser.AccessUserCountry AS AccessUserCity,
dbo.AccessUser.AccessUserWeb AS AccessUserCountry
这极大地影响了我对数据的最终呈现......就像视图试图保持各个列的位置一样。
删除该列会神奇地将 sql 更改回原始状态。
所以问题是:
- 到底是怎么回事?是服务器吗?CMS 软件中的一些功能(添加字段功能所在的位置)
- 我可以在视图上进行设置以使其 sql 语句 100% 静态吗?
问候,
斯蒂恩