草庐IT

SQL_SELECT_LIMIT

全部标签

c# - SQL Server 如何处理超时请求?

假设我使用C#运行一个长时间运行的SQLServer存储过程(比如说30分钟)。进一步假设我在C#中对查询设置了1小时的超时期限,这样如果出于某种原因此SP花费的时间比预期的要长,我不会最终独占数据库。最后,假设此存储过程中有一个try/catchblock以捕获错误并在其中的任何步骤失败时进行一些清理。一些代码(C#):using(SqlCommandcomm=newSqlCommand("longrunningstoredproc")){comm.Connection=conn;comm.CommandType=CommandType.StoredProcedure;comm.Co

c# - LINQ to SQL - 如何高效地对多个条件执行 AND 或 OR 搜索

我有一个ASP.NETMVC站点(它使用LinqToSql作为ORM),并且客户想要一个针对定制数据库的搜索工具,他们可以选择进行“AND”搜索(所有条件匹配)或“或”搜索(任何条件匹配)。该查询非常复杂且冗长,我想知道是否有一种简单的方法可以使它同时执行这两项操作,而无需创建和维护两个不同版本的查询。例如,当前的“AND”搜索看起来像这样(但这是一个大大的简化版本):privateIQueryableGetSampleSearchQuery(SamplesCriteriacriteria){varresults=fromrinTablewhere(r.Id==criteria.Sam

C# 单元测试 - 生成模拟 DataContexts/LINQ -> SQL 类

我热爱C#的新世界,我的玩具程序已经到了我想开始编写一些单元测试的地步。我的代码当前通过DatabaseDataContext对象(*.dbml文件)使用数据库,为此对象创建模拟的最佳方法是什么?考虑到生成数据库LINQ->SQL代码是多么容易以及这一定是一个多么普遍的请求,我希望VS2010内置了有助于测试的功能。如果我偏离了方向并且必须手动完成此操作,您能否告诉我您的首选方法?非常感谢,加文 最佳答案 DataContext的问题在于它不是为模拟而设计的。模拟不可模拟对象的免费工具是MolesfromPex(Pexmoles?)

c# - 清理 SQL 数据

Google出现了各种关于清理Web访问查询的讨论,但我没有找到任何解决我所关心的问题的内容:在C#程序中清理用户输入数据。这必须通过可逆转换来完成,而不是通过移除来完成。作为问题的一个简单示例,我不想破坏爱尔兰名字。什么是最好的方法,是否有任何库函数可以做到这一点? 最佳答案 这取决于您使用的SQL数据库。例如,如果您想在MySQL中使用单引号文字,则需要使用反斜杠Dangerous:'和转义的转义字rune字:\'。对于MS-SQL,事情就完全不同了,Dangerous:'escaped:''。当您以这种方式转义数据时,不会删除

c# - SQL Server : ADO.Net GetUpdateCommand ok with PK,在添加另一个聚集唯一索引后失败

我有这样一个带有非聚集主键的表:CREATETABLE[dbo].[StudentGrade]([EnrollmentID][int]IDENTITY(1,1)NOTNULL,[CourseID][nvarchar](10)NOTNULL,[StudentID][int]NOTNULL,[Grade][decimal](3,2)NOTNULL,CONSTRAINT[PK_StudentGrade]PRIMARYKEYNONCLUSTERED([EnrollmentID]ASC))选择语句是:selectEnrollmentID,GradefromStudentGradeGetUpdat

c# - IOrderedEnumerable.Select() 会保留元素顺序吗?

在C#中,使用Select()投影IOrderedEnumerable的元素是否会保留元素顺序?如果是这样,它为什么会返回一个IEnumerable,而不是一个IOrderedEnumerable?如果没有,我该如何实现(除了使用foreach)?请注意,此问题不是thisone的重复问题-我只有一个Select()子句,没有Distinct()。编辑是的,它是LINQtoObjects。顺便说一句,如果我实际上是在查询一些SQLDB,答案会有什么不同吗? 最佳答案 Select不改变元素顺序。这是一个streamingoperat

c# - IEnumerable.Cast() 与 IEnumerable.Select() 中的转换

假设我有一个IEnumerable我希望将它们转换成它们的ASCII等效字符。对于单个整数,它只是(char)i,所以总有collection.Select(i=>(char)i),但我认为使用collection.Cast()会更干净一些.谁能解释为什么我得到一个InvalidCastException当我使用collection.Cast()但不是collection.Select(i=>(char)i)?编辑:有趣的是,当我调用collection.OfType()时我得到一个空集。 最佳答案 Cast和OfType方法只执行

c# - 使用SQL返回JSON字符串

这是一个“最佳实践”问题。我们正在就此主题进行内部讨论,并希望获得更广泛受众的意见。我需要将数据存储在具有常规列和行的传统MSSQLServer表中。有时我需要将DataTable返回到我的Web应用程序,而其他时候,我需要返回JSON字符串。当前,我将表返回到中间层并将其解析为JSON字符串。这似乎在大多数情况下都能很好地工作,但偶尔会在大型数据集上花费一些时间(解析数据,而不返回表)。我正在考虑修改存储过程,以有选择地返回DataTable或JSON字符串。我只需将@isJsonbit参数添加到SP。如果用户希望使用字符串而不是表,则SP将执行以下查询:DECLARE@result

c# - 在 .Select lambda 中使用 async/await

我正在使用Asp.NetCoreIdentity并尝试简化一些将用户列表及其角色转换到ViewModel的代码。这段代码有效,但在试图简化它的过程中,我陷入了错误和好奇的疯狂漩涡中。这是我的工作代码:varallUsers=_userManager.Users.OrderBy(x=>x.FirstName);varusersViewModel=newList();foreach(varuserinallUsers){vartempVm=newUsersViewModel(){Id=user.Id,UserName=user.UserName,FirstName=user.FirstNa

c# - 为不同的数据库转换 SQL 查询

是否有工具可以将一个数据库的一个SQL查询转换为另一个数据库的SQL查询?对于SQLiteCREATETABLEConstantValues(IdintAUTOINCREMENTprimarykey,VariableNamevarchar(50),Valuesvarchar(150))对于SQLServerCREATETABLEConstantValues(IdINTEGERidentity(1,1)primarykey,VariableNamevarchar(50),Valuesvarchar(150))同样,Oracle和SQLServer也不同。同样在外键约束声明中,如果有一个工