首页 > 其他 > 详细

OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效

时间:2020-05-28 10:37:53      阅读:425      评论:0      收藏:0      [点我收藏+]
OFFSET‘ 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
最近在使用asp.net core的时候,采用take().skip()分页的时候报以下错误:
SqlException: ‘OFFSET‘ 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效。
这个主要是在sql server 2008中,不支持FETCH和NEXT语句(sql server 2012才支持)。
以后在网上参考了一下其余的文章,最终解决了这个问题,记录一下,方便后来人。
解决方法:
修改“StartUp.cs”文件,具体代码截图以下:
1.普通修改方式
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
// Add framework services.
services.AddMvc();
 
var connection = @"Data Source=tcp:111.111.111.111,1044;
Initial Catalog=xxx;Persist Security Info=True;User ID=xxxx;Password=xxxxx";
services.AddDbContext<NoteContext>(options => options.UseSqlServer(connection, b=>b.UseRowNumberForPaging()));
 
services.AddScoped<Repository.INoteRepository,Repository.NoteRepository>();
services.AddScoped<Repository.INoteTypeRepository, Repository.NoteTypeRepository>();
}
 
2.abp修改方式
public static class DbContextOptionsConfigurer
{
public static void Configure(
DbContextOptionsBuilder<SSODbContext> dbContextOptions,
string connectionString
)
{
/* This is the single point to configure DbContextOptions for testDbContext */
dbContextOptions.UseSqlServer(connectionString , b => b.UseRowNumberForPaging());
}
}

OFFSET' 附近有语法错误。 在 FETCH 语句中选项 NEXT 的用法无效

原文:https://www.cnblogs.com/dashanboke/p/12978838.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!