小编Lie*_*oen的帖子

SQL Server糟糕和最佳实践

昨天我发现设置自动增长数据库不是一件好事.

在生产SQL Server数据库时是否还有其他基本的"坏"做法(或最佳做法)?

thx,Lieven Cardoen

database sql-server production

5
推荐指数
1
解决办法
897
查看次数

是否有可能(以及如何)在C#中在运行时将ConnectionString添加到app.config?

我有一个控制台应用程序,它将connectionstring作为参数.我必须在app.config中设置一个名为'ConnectionString'的ConnectionString,并将给定的参数设置为sql connectionstring.

谢谢答案.借助我的链接,我得到了这个:

var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); var connectionStringSettings = new ConnectionStringSettings("ConnectionString",_ arguments ["connectionString"],"System.Data.SqlClient"); config.ConnectionStrings.ConnectionStrings.Add(connectionStringSettings); config.Save(ConfigurationSaveMode.Modified); ConfigurationManager.RefreshSection( "的ConnectionStrings");

c# connection-string app-config

5
推荐指数
2
解决办法
7561
查看次数

Transact-sql中的条件运算符

有没有办法做到这一点,例如在Transact-sql中使用某种条件运算符?

IF @ParentBinaryAssetStructureId = -1
BEGIN
    SET @ParentBinaryAssetStructureId = NULL
END

UPDATE  BinaryAssets.BinaryAssetStructures 
SET     ParentBinaryAssetStructureId = @ParentBinaryAssetStructureId
WHERE   BinaryAssetStructureId = @OriginalBinaryAssetStructureId
Run Code Online (Sandbox Code Playgroud)

sql sql-server

5
推荐指数
1
解决办法
5974
查看次数

无法创建大小为8074的行,该行大于允许的最大行大小8060

我已经问了一个关于这个的问题,但问题一直在打击我;-)

我有两张相同的桌子.我想添加一个xml列.在第一个表中这没有问题,但在第二个表中我得到sqlException(标题).但是,除了它中的数据,它们是相同的.那么,我可以因为表中的数据而得到sqlException吗?

我还尝试将该字段存储在页面外

EXEC sp_tableoption 'dbo.PackageSessionNodesFinished', 
  'large value types out of row', 1
Run Code Online (Sandbox Code Playgroud)

但没有任何成功.相同的SqlException不断涌现.

第一个表:PackageSessionNodes

CREATE TABLE [dbo].[PackageSessionNodes](
    [PackageSessionNodeId] [int] IDENTITY(1,1) NOT NULL,
    [PackageSessionId] [int] NOT NULL,
    [TreeNodeId] [int] NOT NULL,
    [Duration] [int] NULL,
    [Score] [float] NOT NULL,
    [ScoreMax] [float] NOT NULL,
    [Interactions] [xml] NOT NULL,
    [BrainTeaser] [bit] NULL,
    [DateCreated] [datetime] NULL,
    [CompletionStatus] [int] NOT NULL,
    [ReducedScore] [float] NOT NULL,
    [ReducedScoreMax] [float] NOT NULL,
    [ContentInteractions] [xml] NOT NULL,
 CONSTRAINT [PK_PackageSessionNodes] PRIMARY KEY CLUSTERED 
(
    [PackageSessionNodeId] ASC
)WITH (PAD_INDEX  = OFF, …
Run Code Online (Sandbox Code Playgroud)

sql-server sql-server-2008

5
推荐指数
1
解决办法
2万
查看次数

什么时候加载IIS7太多了?

在我们的客户,候选人使用我们的软件进行测试.如果他们的测试完成,则在服务器上进行一些计算.现在,有时候,200名考生可以同时结束考试,因此可以同时进行200次计算.计算似乎都很好,但有些调用IIS7服务器得到一个http错误...

在Flex中,这是错误:

code = "NetConnection.Call.Failed"
description = "HTTP: Status 200"
details = "http://servername/weborb.aspx"
level = "error"
Run Code Online (Sandbox Code Playgroud)

状态200不正常吗?那么这里有什么问题?它甚至是IIS7的问题吗?在200名候选人中,有20人得到了此消息.重新开始测试时,一切运行良好.

我已经在这个问题上找到了这个,但我想知道这是否与我的问题有关(下周我们的客户会做一些压力测试,我已经要求他们测试测试这个帖子中的解决方案是否有效).

一些问题:

  • 可以是IIS7在加载时阻止某些http调用吗?
  • 你怎么知道IIS7由于负载太大而阻止了这些呼叫?
  • 是否可以配置这些东西?

从技术上讲,将来我想排队计算,但就目前来说,没有时间也没有预算.

应用程序:Flex,WebORB,ASP.NET,IIS7和SQLSERVER2008.服务器是Windows Server 2008.

apache-flex iis-7 windows-server-2008

5
推荐指数
1
解决办法
1344
查看次数

缓存ASP.NET HTTP Handler服务器和客户端的响应

是否可以在服务器和客户端上缓存http处理程序的响应?

这似乎没有做到这一点:

_context.Response.Cache.SetCacheability(HttpCacheability.Public); _context.Response.Cache.SetExpires(DateTime.Now.AddDays(7));

_context是作为IHttpHandler实现上的ProcessRequest方法的参数传递的HTTPContext.

有任何想法吗?

更新:客户端会缓存通过httphandler加载的图像,但如果另一个客户端执行相同的调用,则服务器尚未缓存它.因此,对于要求图像的每个客户端,服务器都会转到数据库(和文件流).如果我们使用aspx页面而不是httphandler和缓存配置文件,那么图像将缓存在客户端和服务器上.

asp.net iis caching httphandler

5
推荐指数
1
解决办法
2987
查看次数

为什么搜索索引具有对数复杂度?

索引与字典不相似吗?如果你有密钥,你可以立即访问它吗?

显然索引有时存储为B树......为什么会这样?

database

5
推荐指数
1
解决办法
1590
查看次数

使用数据库或MSMQ排队?

我正在研究的应用程序的一部分是一个swf,它显示了一个包含80个问题的测试.每个问题都通过WebORB和ASP.NET保存在SQL Server中.

如果候选人完成测试,则需要验证会话.问题是有时350名候选人在同一时间完成测试,并且Web服务器和SQL Server上的CPU爆炸(同时进行350次验证).

现在,我该如何在这里实施排队?在数据库中,有一个表,其中包含每个会话的记录.一栏保持状态.1完成,2验证.

我可以通过两种方式实现排队(正如我所看到的,也许你有其他命题):

  • 检查表中状态为1的记录的进程.如果找到,则验证会话.因此,会话一个接一个地验证.
  • 如果候选者完成其会话,则将消息发送到MSMQ队列.另一个进程侦听队列并逐个验证会话.

现在:

  • 什么是最好的方法?
  • 您从哪里开始验证会话的过程?在你的global.asax(application_start)中?作为Windows服务?作为在application_start中启动的网站的根目录下的exe?

对我来说,使用表格并查找状态为1的记录似乎是最简单的方法.

sql-server asp.net queue msmq message-queue

5
推荐指数
1
解决办法
1630
查看次数

使用SmtpClient(C#)发送大量邮件需要一段时间后很长时间

我正在使用这段代码发送邮件:

SmtpClient client = new SmtpClient();
client.Host = smtpServer;
client.Send(mailMessage);
Run Code Online (Sandbox Code Playgroud)

如果我触发此代码十次/秒,那么在发送一百封邮件之后,发送邮件需要10秒......这里是否有一个队列?

  • 这不应该是异步的吗?

.net c# smtp

5
推荐指数
1
解决办法
1936
查看次数

是否需要在本地计算机上安装MSMQ才能使用远程队列?

将消息发送到远程队列时,会在您自己的计算机上创建临时传出队列.这是否意味着如果您自己的计算机上未安装MSMQ,则无法使用远程队列?

msmq

5
推荐指数
2
解决办法
602
查看次数