默认架构不适用于asp classic中的select查询

时间:2014-02-06 17:16:37

标签: sql asp-classic sql-server-2012 database-schema adodb

我在asp经典中遇到默认架构和sql的问题。首先,我有一个数据库'MyDatabase',这个数据库有模式'MySchema'(所有表都在这个模式中),还有一个用户'jdoe'具有'MyDatabase'特权和默认模式'MySchema', 'jdoe'不是系统管理员。 'jdoe'可以从管理工作室执行以下查询而不会出错:

SELECT columnOne FROM MyTable

相同的查询但是从.asp页面找不到MyTable:

Dim query
query = "SELECT ColumnOne FROM MyTable"

Asp页面正在使用ADODB.Command和用户'jdoe'。如果我明确指定了架构,则查询返回结果:

Dim query
query = "SELECT ColumnOne FROM MySchema.MyTable"

我在网上搜索但所有答案都说同样的:将默认架构设置为'jdoe',但是我做了它并且在服务器中使用t-sql或者像存储过程一样使用dabatase但是不能像我在的那样使用查询asp页面。

是否存在一些特殊配置?

感谢。

1 个答案:

答案 0 :(得分:0)

<强>解决:

我不知道发生了什么,我改变了sql server用户&#39; jdoe&#39;通过Windows用户(域\用户),它工作,我以相同的方式配置Windows用户,分配默认架构,没有sysadmin权限。 从asp页面我使用DSN与Windows身份验证和IIS我配置网站安全目录允许匿名访问,我使用我在sql server中使用的相同用户。