在SQL Server上运行基本select时,要求输入不带';不存在,为什么?

在SQL Server上运行基本select时,要求输入不带';不存在,为什么?,sql,sql-server,Sql,Sql Server,我们有另一个开发人员过来为我们完成一些工作。不幸的是,他在我们团队中工作不好,管理层让他离开了 正因为如此,我现在被困在调试他的代码和撤销已经完成的工作上。他没有记录他的代码(他被释放的原因之一),很少记下任何东西,因此我不知道从哪里开始寻找 当我在数据库中的两个特定表上运行基本时,请选择: SELECT * FROM table_name 使用SQLServerManagementStudio我得到了这个 Msg 207, Level 16, State 1, Line 1 Invalid

我们有另一个开发人员过来为我们完成一些工作。不幸的是,他在我们团队中工作不好,管理层让他离开了

正因为如此,我现在被困在调试他的代码和撤销已经完成的工作上。他没有记录他的代码(他被释放的原因之一),很少记下任何东西,因此我不知道从哪里开始寻找

当我在数据库中的两个特定表上运行基本
时,请选择

SELECT * FROM table_name
使用SQLServerManagementStudio我得到了这个

Msg 207, Level 16, State 1, Line 1
Invalid column name 'eventTime'.
有一个
eventTime
列,但不是必需的,也没有在任何PHP文件中使用,但是它现在似乎直接绑定到表,我不知道在哪里可以找到它。提供的错误消息指向我的
SELECT
语句,但它没有任何错误,甚至没有引用
eventTime


我已经看过了,似乎没有任何触发器或存储过程引用这个表。有没有其他方法可以帮我找到这个问题?

这听起来像是个棘手的问题。这里有一些想法

我的第一个想法是,
table\u name
是一个视图,不知何故,该视图与底层表定义不同步。在某些情况下,我发现类型存在问题。我想列名也会发生同样的情况

下一个想法是
表\u name
有计算列。在这种情况下,计算列可能正在使用函数,而函数调用可能正在生成错误。我想不出任何其他方法可以通过简单的
select
来运行代码

我认为问题不会是外键约束,除非。因此,第三种选择是外键约束引用同一数据库中不同模式的表。不同的架构可能具有使表不可访问的权限


对于其中任何一个,在SSMS中编写定义脚本都将帮助您解决问题。

这听起来像是一个棘手的问题。这里有一些想法

我的第一个想法是,
table\u name
是一个视图,不知何故,该视图与底层表定义不同步。在某些情况下,我发现类型存在问题。我想列名也会发生同样的情况

下一个想法是
表\u name
有计算列。在这种情况下,计算列可能正在使用函数,而函数调用可能正在生成错误。我想不出任何其他方法可以通过简单的
select
来运行代码

我认为问题不会是外键约束,除非。因此,第三种选择是外键约束引用同一数据库中不同模式的表。不同的架构可能具有使表不可访问的权限


对于其中任何一个,在SSMS中编写定义脚本将帮助您解决问题。

可能是一个外键约束,由通配符*触发。或者它可以是一个查询集,用于在主数据库服务器配置中的查询上运行。我比MSSQL更擅长MySQL,但如果在MSSQL中可以直接连接到数据库&运行
SHOW VARIABLES
可能会有所帮助。这可能是一个愚蠢的问题,但您是在查询表还是视图?您是否有任何计算列?是否可以发布
SELECT@@VERSION
?计算列的结果?您是指
计算列规范
?请为
表名
编写
创建
语句脚本(在SSMS中右键单击该语句并选择“脚本到新查询”),然后发布结果。可能是由通配符*触发的外键约束。或者它可以是一个查询集,用于在主数据库服务器配置中的查询上运行。我比MSSQL更擅长MySQL,但如果在MSSQL中可以直接连接到数据库&运行
SHOW VARIABLES
可能会有所帮助。这可能是一个愚蠢的问题,但您是在查询表还是视图?您是否有任何计算列?是否可以发布
SELECT@@VERSION
?计算列的结果?您是否参考了
计算列规范
?请为
表名
编写
创建
语句(在SSMS中右键单击该语句并选择“脚本到新查询”),然后发布结果。感谢您提供的大量信息。事实证明,罪犯的位置在我不太熟悉的地方,计算机列。有几个字段和标量值函数相关联。感谢您提供的大量信息。事实证明,罪犯的位置在我不太熟悉的地方,计算机列。有几个字段和标量值函数相关联。