2010-05-07 38 views
1

我们有一个使用SQL语句的ASP.NET应用程序,其中表名不合格。编译时,它可以正常工作,但是在未编译时,它抱怨错误,并说这些表不存在。ASP.NET编译与未编译的数据库限定符

(合格的名字看起来像Select * from MyDatabase.mySchema.MyTable;

碎末状Select * from MyTable

如果试图在数据库上这些查询,沉住气,将采取只限定名。

发生了什么事?我认为编译与未编译的应用程序应该以代码方式执行相同的方式。

回答

1

究竟你“编译”这里是什么意思?

我不认为你遇到的问题是你认为的问题。听起来更像是一个安全上下文问题,在这种情况下,您在一个案例中执行查询的用户上下文默认将查询传递给myschema,其他默认值为dbo。

0

应用程序将表现相同,我的猜测是您正在谈论在Cassini中运行和在IIS中运行之间的区别?

如果是这样的话,请确保您连接字符串是一个特定的身份,而不是模仿来电...