查找数据库中的开放连接数
我的Web应用程序在ASP.NET 2.0,C#2.0和SQL Server 208中如何找到我的SQL Server 2008数据库上的开放连接数量.并且有任何方法可以清除连接池.在共享托管上,他们提供了有限的连接.在我的编码中,我在使用后关闭了所有连接,但是我仍然会因暂停数据库而受到警告. 任何人都可以告诉我如何在数据库上找到号码打开连接以及如何清除连接池. 我使用语句进行连接,并在最终封锁中使用后关闭了所有连接.因此,尽管存在错误,但它关闭了OPED连接. 预先感谢. 解决方案 这显示了每个DB的连接数: SELECT DB_NAME(dbid) as DBName, COUNT(dbid) as NoOfConnections, loginame as LoginName FROM sys.sysprocesses WHERE dbid > 0 GROUP BY dbid, loginame
0 2024-04-15
编程技术问答社区
如何用Linq to ADO.NET实体框架进行全文搜索(FTS)?
现在,SQL Server 2008已内置了全文搜索.我希望使用它来为网站的搜索供电.我还在考虑为我的ORM使用ADO.NET ENTITY框架,但我想知道如何使用LINQ进行全文搜索(FTS)到Ado.net Entity Framework? ado.net实体框架中是否有任何支持,还是我使用创建使用全文搜索predicates predicates ? 的函数的方法 解决方案 实体框架仅支持可用的SQL功能的子集(部分是在一系列提供商的兼容).但是,即使是linq to-sql(支持更多SQL-Server特定构造,例如UDFS)也不支持全文Afaik. 我相信您需要使用存储过程/UDF. UDF方法是首选的,因为元数据层要强得多,并且可以在DB服务器上组合 - 但是,Entity Framework并没有(或我上次检查)像UDFS; P一样; P使用存储过程. 其他解决方案 我已经看到了EF4的代码: var query = context.Exe
0 2024-04-15
编程技术问答社区
SQL Server对一个超时的请求做什么?
假设我使用C#运行长期运行的SQL Server存储过程(假设30分钟).进一步假设我在C#的查询上放了1个小时的超时期限,以便如果出于任何原因,SP所需的时间比预期的时间更长,我最终不会垄断DB.最后,假设此存储过程中有一个尝试/捕获块以捕获错误并在其中任何步骤失败的情况下进行清理. 一些代码(C#): using (SqlCommand comm = new SqlCommand("longrunningstoredproc")) { comm.Connection = conn; comm.CommandType = CommandType.StoredProcedure; comm.CommandTimeout = 3600; comm.ExecuteNonQuery(); } /* Note: no transaction is used here, the transactions are inside the stored pro
0 2024-04-15
编程技术问答社区
在'OFFSET'附近语法不正确。在 "实体框架核心 "的FETCH语句中,对选项NEXT的使用无效。
这是我的代码: var result = dbContext.Specialty.OrderByDescending(u => u.IdS) .Skip(20) .Take(10) .AsEnumerable(); 错误: "偏移"附近的语法不正确. fetch语句 中的下一个选项的使用无效 解决方案 为此有一个兼容性设置(UseRowNumberForPaging),可以在dbcontext本身中配置. protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { var coonectionString = "Data Source=localhost\\MSSQLSERVER01;Initial Catalog=AppDb01;Integrated Se
0 2024-04-15
编程技术问答社区
报告查看器的初级教程?
我正在使用VSTS 2008 + C# + .NET 3.5 + SQL Server 2008 + ASP.NET + IIS 7来开发Web应用程序.任何针对报告查看器的快速易于学习的教程 - 我想根据SQL Server 2008的数据生成报告.基本的设计和实现功能很好,无需此时了解有关报告审稿人的高级主题. 解决方案 我建议从这里开始: http://www.gotreportviewer.com/ http://msdn.microsoft.com/en-us/library/aa179197%28SQL.80%29.aspx 更新 看看逐步的详细信息.它使用数据集而不是数据库,但您应该能够轻松地进行必要的调整.
0 2024-04-14
编程技术问答社区
如何使用C#代码获得可用的SQL服务器列表?
我创建了一个桌面应用程序.在应用程序启动时,我想在本地PC上显示所有可用SQL Server实例的列表,并允许选择一个与之连接的SQL Server名称. 无论如何是否可以获取本地PC上可用的所有SQL Server实例名称的列表? 非常感谢. 解决方案 string myServer = Environment.MachineName; DataTable servers = SqlDataSourceEnumerator.Instance.GetDataSources(); for (int i = 0; i
0 2024-04-14
编程技术问答社区
" Identity_insert设置为关闭时,无法在表中插入标识列的显式值"使用复合键
我们最近在数据库中添加了一个新的"级别" - 在整个数据库中的表中的现有ID身份字段之前,添加了一个密钥" Company_ID". 例如,如果表具有ID,则该表格,现在它具有Company_ID,然后是ID,则具有字段.这个想法是,这允许ID自动向功能提供的每个不同的Company_ID值进行自动启动(Company_ID 1可以具有ID 1、2、3等; Company_ID 2可以具有ID 1、2、3等). 自动插入字段仍然是ID.一个示例表是: [dbo].[Project]( [Company_ID] [int] NOT NULL, [ID] [int] IDENTITY(1,1) NOT NULL, [DescShort] [varchar](100) NULL, [TypeLookUp_ID] [int] NULL, [StatusLookUp_ID] [int] NULL, [Is
0 2024-04-14
编程技术问答社区
在对象'Address'、数据库'CNET_85731'、模式'dbo'上拒绝了SELECT权限。
我使用Visual Studio 2008和SQL Server 2008在C#ASP.NET上工作了7个月. 今天,我正在运行以前正在运行的应用程序的一部分,并且有以下错误: 在对象"地址",数据库'cnet_85731',架构'dbo'中拒绝选择权限. 我浏览了我的代码,发现在以下用户控制中引起了此错误: protected void sdsAddressesList_Selected(object sender, SqlDataSourceStatusEventArgs e) { if (e.AffectedRows == 0) { ddlAddresses.Items.Insert((0), new ListItem("No Billing Addresses", "0")); } } sqldatasource定义如下:
0 2024-04-14
编程技术问答社区
更新实体框架模型
我刚刚开始使用EF并发现它很酷,但是我遇到了一个问题, 问题: 我更改了表用户内部列的DB模式,以前是Varbinary(50),然后我将其更改为Varchar(50),然后在MyModel.Edmx设计器内部在单击完成后选择"来自数据库的更新模型".我收到了这个错误. 错误: Error 2019: Member Mapping specified is not valid. The type 'Edm.Binary [Nullable=False,DefaultValue=,MaxLength=100,FixedLength=False]' of member 'Email' in type 'LearnDBModel.User' is not compatible with SqlServer.varchar [Nullable=False,DefaultValue=, MaxLength=50,Unicode=False,Fixe
对于SQL Server'的日期、时间和datetimeoffset,有哪些相等的C#数据类型?
SQL Server中日期数据类型的最合适的C#数据类型是什么?我专门寻找 date time datetimeoffset 解决方案 这是date,time和datetimeoffset SQL Server数据类型的等效CLR数据类型: date - DateTime,Nullable 时间 - TimeSpan,Nullable dateTimeOffset - DateTimeOffset,Nullable 请注意,您可以在此处找到所有SQL Server数据类型及其CLR等效物的列表,映射CLR参数数据 其他解决方案 在C#中您可以使用 日期 timespan dateTimeOffsect结构 其他解决方案 仅在安装.NET Framework 3.5 SP1. 时,才支持新类型 sqldbtype.date sqldbtype.t
0 2024-04-14
编程技术问答社区
SqlDependency的可靠性?
我目前的情况是,当新数据到达数据库表中时,我有一个应用程序需要通知.数据来自外部来源(我无法控制 - 这是此唯一的集成选项).当新数据到达时,我的应用程序需要采取某些操作 - 对新数据进行基础查询,处理,将结果插入本地表格等. 我想在可能的情况下避免进行轮询,因为预计数据将实时处理.也就是说,确保没有丢失数据是第一的优先级. 我的问题: SQLDEPDEPenty通常被认为是可靠的吗? 我需要担心种族条件,例如我正在处理另一个时,我正在处理一个更改? 重新启动数据库时会发生什么?我的应用程序会再次恢复并开始再次接收更改,还是我需要某种失败的计时器,以定期重新订阅通知? 我在主题地址SQL Server 2005上阅读的大多数文章.我使用的是SQL Server 2008 R2.是否有比SQLDEPDENTINCE更喜欢的新技术? (编辑)另外,如果应用程序崩溃怎么办?我想我必须在启动时查询丢失的数据吗? 解决方案 1)是的,我认为它可靠,因为它确实正确地
0 2024-04-14
编程技术问答社区
如何从C sharp插入列表到SQL Server 2008?
我在C#中创建了一个列表,现在我需要将列表插入SQL Server 2008. 这可能吗?请以一个简单的例子解释. 解决方案 这是一个简单的示例: List list = new List() { "A", "B", "C" }; using (var con = new SqlConnection(connectionString)) { con.Open(); using (var cmd = new SqlCommand("INSERT INTO TABLE(Column)VALUES(@Column)", con)) { cmd.Parameters.Add("@Column", SqlDbType.VarChar); foreach (var value in list) { cmd.Parameters["@Column"].Value
0 2024-04-14
编程技术问答社区
如何在Entity Framework 4.0模型第一设计器中添加一个文件流列?
我正在使用EF 4.0设计器来通过单击"从模型生成数据库"来创建数据库. 我不会使用SQL 2008列类型" FileStream". 不幸的是,我无法从特定列的类型下拉列表中选择" fileStream". 那么,如何首先将FileStream与EF 4.0模型一起使用? 到目前为止,我已经搜索了一些SQL脚本以手动添加此类列,但是通过SQL脚本添加它们意味着我没有模型中的它们.我该怎么办? 解决方案 实体框架不支持Filestream.即使添加它,它仍将用作任何其他varbinary(max)列.要在数据库生成期间使用Filestream,必须使用自定义结构注释和修改生成模板. 其他解决方案 varbinary(max)二进制大对象(blob)数据被存储为文件系统上的文件.没有名为FileStream的SQL类型.它是存储在Varbinary(Max)列中的BLOB数据的属性.
0 2024-04-14
编程技术问答社区
如何用c#将视频保存到数据库?
我有一个方案,我想将视频存储到数据库中并显示在GRID中以从数据库下载,我将通过FileUpload Control上传视频,它应该是SQL Server2008数据库,这是C#和ASP.NET中的最佳方法? 解决方案 有许多链接.检查一下. http://weblogs.asp.net/hajan/hajan/archive/2010/06/21/save-and-display-youtube-video-video-links-on-asp-net-website.aspx 在http://forums.asp.net/t/1104451.aspx/1?how+to+to+retrieve+video+from+sql+sql+server+database http://forums.asp.net/p/1533758/3719583.aspx http://forums.asp.net/1045855.aspx/2/10 http://forums.asp.net/
0 2024-04-14
编程技术问答社区
我在哪里可以找到 "Microsoft.SqlServer.BatchParser.dll"?
可能的重复: 找不到Microsoft.sqlserver.sqlserver.batchparser.dll 我已经安装了Microsoft SQL Server 2008 R2. 我想在c#中包含Microsoft.SqlServer.BatchParser.dll作为Asebly.但是我找不到Dll. 如果我转到我的GAC文件夹,则在那里,就在那里: 但是VS2008中的"参考"对话框不会向我展示. 我在哪里可以找到或如何获得DLL? 解决方案 batchparser是SMO的一部分.作为一个简单的规则,除非明确允许,否则您永远不会重新分配您未创建自己的DLL.可重新分布的DLL有可重新分布的软件包.对于SQL Server,SMO重新分布软件包的形式为"功能包".对于SQL Server 2008,宣布了相应的功能包在这里,但特征包本身的链接被打破了.您可以使用Microsoft®SQLServe®2008 a>.它包含 sharedManag
0 2024-04-14
编程技术问答社区
将一个操作数作为一个sql参数传递
我目前正在使用以SQL Server 2008为后端的ASP.NET应用程序.我想让用户能够在SQL语句中指定他们想要过滤的内容. 在接口上,我给他们选择以下选项作为下拉列表: 等于 比...更棒 少于 等 我想将其作为要执行的SQL查询上的参数传递.我如何最好地实现这一目标? 例如; Select amount, deduction, month from loan where amount @operant 10000; @operand是上述下拉的返回值,即= = 解决方案 假设所有正整数OPTION (RECOMPILE)有助于阻止参数嗅探,但这可能不是必需的,具体取决于表的大小,您的参数化设置和"优化临时工作负载"设置. WHERE [Amount] BETWEEN CASE WHEN @operand LIKE '
0 2024-04-14
编程技术问答社区
SqlException: System.Data.SqlClient.SqlException(0x80131904)。
我在C#中编写了一个代码,该代码在我的计算机上效果很好,Windows 7(MS SQL Server 2008),但没有Windows Vista(MS SQL Server 2005).我无法在第二台计算机上更改系统;)我正在使用Visual Studio 2010. 所以这是代码的一部分,来自我的类​​" obsql": private SqlConnection connection; public obSQL(string user, string pass, string instance, string dbdir) //sql server authentication { connection = new SqlConnection(); connection.ConnectionString = "user id=" + user + ";" +
0 2024-04-14
编程技术问答社区
恢复SQL2008 DB R2到SQL2008(无R2)。
我的开发器PC上安装了SQL 2008 R2 在内部服务器上安装了SQL 2008 R2(这里托管了一些应用程序) 在外部3.RD Party Hosting Company使用SQL 2008(无R2). 因此,当我在Rephiteper PC上创建DB时,我需要在SQL 2008(w/o R2)上还原外部托管服务器...构建号码,所以我无法在W/O R2服务器上还原. 我认为在W/O R2服务器上创建数据库并在我的本地主机上还原并进行更改并将其还原回W/O R2服务器,但是它说了相同的错误...构建数字已更改. . 我以为我可以在我的开发器PC上删除R2版本并使用SQL 2008 W/O R2,但是问题仍然是我无法将DB从内部服务器还原到我的Developper PC ...( ) 简而言之: 如果我想在SQL2008 R2和SQL2008之间还原/备份DB,则如何处理(我需要数据库的数据? 是否可以将SQL2008 R2 DB用作SQL2008 dB的
0 2024-04-14
编程技术问答社区
将varchar数据类型转换为datetime数据类型会导致超出范围值的错误
将VARCHAR数据类型转换为DateTime数据类型,导致了范围的值错误 我正在尝试使用表单,表单验证和SQL Server中的日期格式输入数据,均为dd/mm/yy,但是当我尝试使用一天的表格提交数据时高于12(例如13/12/2012),它引发了一个异常,其原因是"将varchar数据类型转换为日期时间数据类型会导致范围的值错误",如果我尝试输入数据以mm/dd/yy格式为"错误日期格式"的形式,这是假定的,这意味着dd/mm/yy格式是正确的格式 这是下面我表格的代码: private void btnAddProject_Click(object sender, EventArgs e) { DateTime startDate; DateTime endDate; if (txtProjectName.Text == "") //client side validation {
0 2024-04-14
编程技术问答社区
在SQL Server 2008中加快更新18.5万行的速度?
我有一个二进制文件,其中大约是 185K 行. C#在几秒钟内解析文件.使用该数据更新MSSQL表的最佳方法是什么? 我尝试了什么: 最简单的方法 - 阅读二进制行,解析,更新表.整个过程大约需要2天才能更新所有数据. 组合200个更新查询,并立即将其发送到MSSQL.在这种情况下,更新需要8到10小时. 将500+的查询组合为单个查询.工作速度更快,但会不时删除超时例外,因此某些更新不会进行. 关于如何加快更新过程的任何建议? 解决方案 使用(到临时表),然后是散装方法可以使用.NET客户端的"推动"有效地传输数据.使用然后,MERGE命令(在SQL Server 2008+中)可根据所需的规则插入/更新/将数据从临时表插入到目标表.由于此时数据完全在数据库中,因此此操作将尽可能快.使用MERGE May 还会导致性能优势在许多单独的命令上,甚至是同一交易中的命令. 另请参见: sqlbulkcopy的任何方法? sql Server 200
0 2024-04-14
编程技术问答社区