在EF6.1中执行存储过程时,数据库中CREATE TABLE权限被拒绝
本文关键字:TABLE CREATE 权限 数据库 拒绝 EF6 执行 存储过程 | 更新日期: 2023-09-27 17:49:18
我正试图使用代码优先方法从EF 6中的存储过程中获取一些记录。最初,当我使用"sa"登录连接字符串时,它正在工作。当我更改连接字符串中的登录详细信息时,它开始抛出错误
CREATE TABLE权限被拒绝
对于信息,我已经在数据库上禁用了访问表的权限。因此,我使用存储过程来访问除sa用户之外的所有用户的数据。我进入SQL Server profiler查看查询实际上在做什么,并看到它试图创建我的实体的表。
这是我的代码:
public IEnumerable<_BankHoliday_SP> _BankHoliday_SP
{
get
{
var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("exec spConfigBankHolidayGet");
return content;
}
}
当我试图从ViewModel类访问数据时。
var bankHolidayList = _repository._BankHoliday_SP.ToList();
出现错误
尝试从SQL server执行sp
EXEC proc_name
如果有效,不需要传递带有sp name
的exec var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("exec spConfigBankHolidayGet");
var content = _dbContext.Database.SqlQuery<_BankHoliday_SP>("spConfigBankHolidayGet");