随笔分类 -  mssql

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 24 下一页
摘要:1.alwayson高可用性Ø多数据库故障转移Ø多副本Ø同步和异步数据移动Ø内置压缩和加密Ø自动和手动转移Ø灵活的转移策略Ø自动页面修复2.列存储索引(Apollo)(数据库引擎中的新索引类型)•数据仓库•大多数为读工作负荷•星状连接•处理大量的数据•大量的内存•当数据加载到内存时提供最佳性能•极大减少访问事实表时磁盘的分页处理•在严重的内存限制情况下,可以回退到行处理机制3.开发新特性•Order by 分页SELECT...ORDER BY ...OFFSET ... ROWSFETCH NEXT ... ROWS ON 阅读全文
posted @ 2011-11-30 10:17 qanholas 阅读(3940) 评论(1) 推荐(1) 编辑
摘要:SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息SQL Server 阻止了对组件 \'Ad Hoc Distributed Queries\' 阅读全文
posted @ 2011-10-29 13:48 qanholas 阅读(242) 评论(0) 推荐(0) 编辑
摘要:通常,你需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD和DATEDIFF函数来计算出在你的程序中可能你要用到的一些不同日期。 在使用本文中的例子之前,你必须注意以下的问题。大部分可能不是所有例子在不同的机器上执行的结果可能不一样,这完全由哪一天是一个星期的第一天这个设置决定。第一天(DATEFIRST)设定决定了你的系统使用哪一天作为一周的第一天。所有以下的例子都是以星期天作. 阅读全文
posted @ 2011-10-28 15:34 qanholas 阅读(212) 评论(0) 推荐(0) 编辑
摘要:Sql Server数据库的一大优势,就是具有富UI的管理和调试工具,这点,绝对是优于ORACLE和其他的大中型数据库的。Sql Server的众多工具中,对于开发人员和DBA来讲,非常重要的一个,就是Sql Profiler (事件探查器) 了。Sql Server中执行的每个一个动作,都可以在Sql Profiler里看的一清二楚,这对于性能调优,后期维护等等是非常有帮助的。但是,问题来了,在你的产品发布后,你可能不想让客户跟踪到你的SQL执行情况,便于对客户保密。那么这个优势,就成了你的“眼中钉”如何才能不被Sql Profiler跟踪到呢?下面,我们就来探讨这个问题假设,你有一张表A, 阅读全文
posted @ 2011-10-12 12:19 qanholas 阅读(2483) 评论(3) 推荐(0) 编辑
摘要:Adding a column to a table is common task for DBAs. You can add a column to a table which is a nullable column or which has default values. But are these two operations are similar internally and which method is optimal?Let us start this with an example.I created a database and a table using followi 阅读全文
posted @ 2011-10-05 22:45 qanholas 阅读(357) 评论(0) 推荐(0) 编辑
摘要:Recently I came across with an article on DB2 about using Union instead of OR. So I thought of carrying out a research on SQL Server on what scenarios UNION is optimal in and which scenarios OR would be best. I will analyze this with a few scenarios using samples taken from the AdventureWorks databa 阅读全文
posted @ 2011-10-05 22:35 qanholas 阅读(937) 评论(0) 推荐(0) 编辑
摘要:对SQL Server来说,最重要的资源是内存、Disk和CPU,其中内存又是重中之重,因为SQL Server为了性能要求,会将它所要访问的数据全部(只要内存足够)放到缓存中。这篇就来介绍SQL Server的内存管理体系。SQL Server作为Windows上运行的应用程序,必须接受Windows的资源管理,利用Windows的API来申请和调度各类资源。但是,由于Windows的资源管理体系,是为了满足大多数的应用程序所设计的,这对于SQL Server这种定位于企业级、支持多用户和高并发性的数据库应用程序来说不是很适合,为此SQL Server开发了自己的一套资源管理体系——SQLO 阅读全文
posted @ 2011-10-05 21:03 qanholas 阅读(822) 评论(0) 推荐(0) 编辑
摘要:--创建测试数据库CREATEDATABASEDbGO--对数据库进行备份BACKUPDATABASEDbTODISK='c:\db.bak'WITHFORMATGO--创建测试表CREATETABLEDb.dbo.TB_test(IDint)--延时1秒钟,再进行后面的操作(这是由于SQLServer的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点的操作失败)WAITFORDELAY'00:00:01'GO--假设我们现在误操作删除了Db.dbo.TB_test这个表DROPTABLEDb.dbo.TB_test--保存删除表的时间SELECTd 阅读全文
posted @ 2011-10-05 20:58 qanholas 阅读(3035) 评论(0) 推荐(1) 编辑
摘要:local是本地服务器,命名管道连接127.0.0.1和localhost是本机服务器,使用的是 TCP/IP 连接,他需要网卡作为平台。如果你安装网络防火墙你会发现,在使用local访问时防火墙没有提示。但是使用127.0.0.1访问的时候就会出现提示。提示某某程序访问网络。TCP/IP 连接对于慢速网络效果好,需要 1433 端口开放才能连接。 命名管道连接功能更强,易于使用,提供配置选项。 阅读全文
posted @ 2011-10-05 20:35 qanholas 阅读(2610) 评论(0) 推荐(0) 编辑
摘要:SQL Server 2005支持用CLR语言(C# .NET、VB.NET)编写过程、触发器和函数,因此使得正则匹配,数据提取能够在SQL中灵活运用,大大提高了SQL处理字符串,文本等内容的灵活性及高效性。操作步骤:1.新建一个SQL Server项目(输入用户名,密码,选择DB),新建好后,可以在属性中更改的2.新建一个类“RegexMatch.cs”,选择用户定义的函数可以看到,该类为一个部分类:public partial class UserDefinedFunctions现在可以在该类中写方法了,注意方法的属性为:[Microsoft.SqlServer.Server.SqlFun 阅读全文
posted @ 2011-10-05 20:28 qanholas 阅读(343) 评论(0) 推荐(0) 编辑
摘要:在一个表里面,有一个允许为空的字段,空是可以重复的,但是不为空的值需要唯一。表结构如下面代码创建CREATETABLEtest_tb(TestIdintnotnullidentity(1,1)primarykey,Captionnvarchar(100)null);GO解决方案1: 对于这个问题,大家的第一个想法可能是:在Caption这个字段上面加一个唯一键不就可以了吗?好,我们按着这个思路做下去,先创建唯一索引。CREATEUNIQUENONCLUSTEREDINDEXun_test_tbONtest_tb(Caption)GO索引创建好了,我们来测试下效果INSERTINTOtest_t 阅读全文
posted @ 2011-10-05 18:24 qanholas 阅读(760) 评论(0) 推荐(0) 编辑
摘要:/Files/qanholas/SQLServerCacheManagerInstallation1_0_0_4.zip、 阅读全文
posted @ 2011-10-05 13:28 qanholas 阅读(352) 评论(0) 推荐(0) 编辑
摘要:/Files/qanholas/SPGen_ReleaseCandidate1_Binaries.zip---- Dropping stored procedure sp_费用表_SelectAll : --IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[sp_费用表_SelectAll]') AND OBJECTPROPERTY(id, N'IsProcedure') = 1) DROP PROCEDURE [dbo].[sp_费用表_SelectAll] GO-- ======= 阅读全文
posted @ 2011-10-05 13:18 qanholas 阅读(831) 评论(0) 推荐(0) 编辑
摘要:/*Script created by SQL Prompt version 5.1.8.2 from Red Gate Software Ltd at 2011-10-5 12:26:13Run this script on ycmis to split the table.Please back up your database before running this script.*/-- Summary for the table split:-- Action:-- Create table [dbo].[费用表]-- Create primary key [pk_费用表] on [ 阅读全文
posted @ 2011-10-05 12:53 qanholas 阅读(298) 评论(0) 推荐(0) 编辑
摘要:很多人关心的和担心的都是 SQL Server 2005 相对它的前版本SQL Server 2000所做的重大改进或新增功能。在我升级到SQL2005之后,不得不说的:你也值得拥有。(套用一句广告语,呵呵) 我总结了一下个人认为SQL Server 2005 中最值得你为之升级的10 个理由。无论你是想了解或学习SQL Server 2005,还是正在评估或考虑升级到SQL Server 2005,我相信当时你看完这篇帖子一定会对你的决定起到参考作用。 升级理由一:数据分区 只有到了2005 版本SQL Server才拥有了真正的表和索引数据分区技术。这个技术一下子使SQL Serve... 阅读全文
posted @ 2011-10-05 10:26 qanholas 阅读(7541) 评论(0) 推荐(0) 编辑
摘要:网上看到一篇sql优化的文章,整理了一下,发现很不错,虽然知道其中的部分,但是没有这么全面的总结分析过……一.目的数据库参数进行优化所获得的性能提升全部加起来只占数据库应用系统性能提升的40%左右,其余60%的系统性能提升全部来自对应用程序的优化。许多优化专家甚至认为对应用程序的优化可以得到80%的系统性能提升。因此可以肯定,通过优化应用程序来对数据库系统进行优化能获得更大的收益。对应用程序的优化通常可分为两个方面:源代码的优化和SQL语句的优化。由于涉及到对程序逻辑的改变,源代码的优化在时间成本和风险上代价很高(尤其是对正在使用中的系统进行优化)。另一方面,源代码的优化对数据库系统性能的提升 阅读全文
posted @ 2011-10-02 19:33 qanholas 阅读(226) 评论(0) 推荐(0) 编辑
摘要:下载地址/Files/qanholas/SqlExpressProfiler.Setup.rar 阅读全文
posted @ 2011-09-26 19:27 qanholas 阅读(168) 评论(0) 推荐(0) 编辑
摘要:对于SqlServer的优化来说,可能优化查询是很常见的事情。关于数据库的优化,本身也是一个涉及面比较的广的话题,本文只谈优化查询时如何看懂SqlServer查询计划。由于我对SqlServer的认识有限,如有错误,也恳请您在发现后及时批评指正。首先,打开【SQL Server Management Studio】,输入一个查询语句看看SqlServer是如何显示查询计划的吧。说明:本文所演示的数据库,是我写的一个演示程序专用的数据库, 可以在此网页中下载。select v.OrderID, v.CustomerID, v.CustomerName, v.OrderDate, v.SumMon 阅读全文
posted @ 2011-09-25 20:45 qanholas 阅读(386) 评论(1) 推荐(0) 编辑
摘要:SQLServer时间日期函数详解,SQLServer,时间日期,1. 当前系统日期、时间 select getdate() 2. dateadd 在向指定日期加上一段时间的基础上,返回新的datetime 值 例如:向日期加上天 select dateadd(day,2,'2004-10-15') --返回:-10-17 00:00:00.0003. datediff 返回跨两个指定日期的日期和时间边界数。 select datediff(day,'2004-09-01','2004-09-18') --返回: select datediff( 阅读全文
posted @ 2011-09-21 17:31 qanholas 阅读(371) 评论(0) 推荐(0) 编辑
摘要:USE AdventureWorks;GOBEGIN TRANSACTION;GOUPDATE Person.Contact SET LastName = '1111' WHERE LastName = 'Wood';GOIF @@TRANCOUNT > 0BEGIN PRINT N'A transaction needs to be rolled back.'; ROLLBACK TRANSACTION;ENDselect LastName from Person.Contact WHERE LastName = 'Wood 阅读全文
posted @ 2011-09-20 13:20 qanholas 阅读(127) 评论(0) 推荐(0) 编辑

上一页 1 ··· 12 13 14 15 16 17 18 19 20 ··· 24 下一页