随笔分类 - 数据库
摘要:在SQL Server中,一组行被称为一个窗口,开窗函数是指可以用于“分区”或“分组”计算的函数。这些函数结合OVER子句对组内的数据进行编号、求和、计算平均值等。因此,像ROW_NUMBER、SUM、AVG都可以称为开窗函数。开窗函数:分别应用于每个分区,并为每个分区重新启动计算.即,计算从窗口派生的结果集中各行的值.分别包括:排名开窗函数,聚合开窗函数主要有两个:order by 和partition by详见:http://www.cnblogs.com/changhai0605/archive/2008/08/26/1276319.html例题3.例题:--建立订单表create ta
阅读全文
摘要:将EXCEL文档导入SQL server 2005错误链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。(1)一个正常运行很久的程序,突然有一天运行时,出现以下错误.消息 7303,级别 16,状态 1,第 2 行无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象。解决办法:1) 重启服务器或者打开"Sql sever
阅读全文
摘要:select a.name, b.*,c.name,case c.freq_type when 1 then '一次' when 4 then '每天' when 8 then '每周' when 16 then '每月' when 32 then 'Runs when the SQL Server Agent service starts' when 128 then ' Runs when the computer is idle' end,freq_interval,case freq_sub
阅读全文
摘要:在SQL SERVER中,你可能需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD 和DATEDIFF函数来计算出在你的程序中可能你要用到的一些不同日期。
在使用本文中的例子之前,你必须注意以下的问题。大部分可能不是所有例子在不同的机器上执行的结果可能不一样,这完全由哪一天是一个星期的第一天这个设置决定。第一天(DATEFIRST)设定决定了你的系统使用哪一天作为一周的第一天。所有以下的例子都是以星期天作为一周的第一天来建立,也就是第一天设置为7。假如你的第一天设置不一样,你可能需要调整这些例子,使它和不同的第一天设置相符合。你可以通过@@DATEFIRST函数来检查第一天设置。
阅读全文
摘要:原文地址:http://blog.csdn.net/gisfarmer/archive/2009/03/07/3966677.aspx 大部分人都知道用oledb来读取数据到dataset,但是读取之后怎么处理dataset就千奇百怪了。很多人通过循环来拼接sql,这样做不但容易出错而且效率低下,System.Data.SqlClient.SqlBulkCopy 对于新手来说还是比较陌生的,这个就...
阅读全文
摘要:问题:在SQL服务器上用sa账号登陆后执行提示:链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。消息 7303,级别 16,状态 1,第 1 行无法初始化链接服务器 "(null)" 的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 的数据源对象。此语句以前正常。大约1周前出现上述...
阅读全文
摘要:本人用过的执行SSIS包的方法有如下几种:1)直接执行SSIS包,这是就方便的方法了,哈哈,前提是你的系统里已经安装好了DTExecUI.在安装好vs2005或VS2008的business intelligence模块就有这个工具了,是图形界面的,可以很直观的配置各项参数。2)在CMD里调用dtexec(sql2005),dtsRun(sql2000),详细见按F13)带XP_cmdShell系...
阅读全文
摘要:原文地址:http://www.cnblogs.com/shinings/archive/2009/02/13/1390357.html整理索引碎片,提升SQL Server速度 SQL Server“吃内存”的解决现象:Web服务器中SQL Server占用内存非常高,加内存后,SQL Server又吃掉新加的内存,好像内存永远不够用一样。分析:其实这并不一定是由于SQL...
阅读全文
摘要:/*******************************************************//* 功能:SQL Server 2005索引碎片整理 *//* 逻辑碎片>=30重建索引,<30重新组织索引 *//* 作者:贾桂军 *//* 日期:2008年6月11日 *//***********************************************...
阅读全文
摘要:今天我们要向大家讲解的是SQL Server索引碎片处理的实际操作流程,我们大家都知道SQL Server数据库随着实际使用时间的增长,会让人觉得越来越慢,这个与你平时没有合理的维护计划有关系,定期处理索引碎片是一个必不可少的工作内容之一。具体信息参考msdnhttp://msdn.microsoft.com/zh-cn/library/ms189858.ASPx 我工作中碰到一张表,有320万记...
阅读全文
摘要:SQL Server程序员经常要在SSMS(SQL Server Management Studio)或查询分析器(2000以前)中编写T-SQL代码。以下几个技巧,可以提升工作效率。以下说明以SS2005为例,SS2008也适用;SS2000的话可能部分适用吧。1. 快捷键现在只要不是电脑新手,都知道Ctrl+C/Ctrl+V,没什么人会用菜单去进行复制/粘贴。而对于靠电脑吃饭的程序员来说,只知...
阅读全文
摘要:bcp 实用工具
说明:用于在 Microsoft SQL Server 实例和用户指定格式的数据文件之间复制数据。
安装位置:x:\Program Files\Microsoft SQL Server\90\Tools\Binn
阅读全文
摘要:摘自:http://www.cnblogs.com/blsong/archive/2009/12/07/1618578.html 1. 概述 1.1. 基本原则 以大小写敏感编写SQL语句。 尽量使用Unicode 数据类型。 优先使用连接代替子查询或嵌套查询。 尽量使用参数化SQL查询代替语句拼接SQL查询。 禁止使用[拼音]+[英语]的方式来命名SQL对象或变量。 尽量使用存储过程代...
阅读全文
摘要:原文地址:http://www.blogjava.net/nokiaguy/archive/2009/nokiaguy/archive/2009/nokiaguy/archive/2009/02/05/253440.html 上一篇:SQL Server2005杂谈(2):公用表表达式(CTE)的递归调用排名函数是SQL Server2005新加的功能。在SQL Server2005中有如下四个...
阅读全文
摘要:原文地址:http://www.blogjava.net/nokiaguy/archive/2009/nokiaguy/archive/2009/02/01/252890.html 先看如下一个数据表(t_tree): 上图显示了一个表中的数据,这个表有三个字段:id、node_name、parent_id。实际上,这个表中保存了一个树型结构,分三层:省、市、区。其中id表示当前省、市或区的id...
阅读全文
摘要:原文地址:http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html 先看下面一个嵌套的查询语句:上面的查询语句使用了一个子查询。虽然这条SQL语句并不复杂,但如果嵌套的层次过多,会使SQL语句非常难以阅读和维护。因此,也可以使用表变量的方式来解决这个问题,SQL语句如下:虽然上面的SQL语句要比第一种方式更复杂,但却将子查询放在...
阅读全文
摘要:sp_configure 'xp_cmdshell',1 RECONFIGURE在设置选项并发出 RECONFIGURE(在某些情况下 RECONFIGURE WITH OVERRIDE)语句之后立即生效。若要用 sp_configure 配置高级选项,必须首先在将 show advanced options 选项设置为 1 的情况下运行 sp_configure,然后运行 RECONFIGURE...
阅读全文
摘要:返回受 INSERT、UPDATE、DELETE 或 MERGE 语句影响的各行中的信息,或返回基于受这些语句影响的各行的表达式。这些结果可以返回到处理应用程序,以供在确认消息、存档以及其他类似的应用程序要求中使用。也可以将这些结果插入表或表变量。另外,您可以捕获嵌入的 INSERT、UPDATE、DELETE 或 MERGE 语句中 OUTPUT 子句的结果,然后将这些结果插入目标表或视图。 ...
阅读全文
摘要:向指定收件人发送电子邮件。该邮件可能包含查询结果集和/或文件附件。将邮件成功放入数据库邮件队列中后,sp_send_dbmail 将返回消息的 mailitem_id。此存储过程位于 msdb 数据库中。EXEC msdb.dbo.sp_send_dbmail @profile_name = 'AdventureWorks Administrator', @recipients = 'danw@A...
阅读全文
摘要:作用:生成 Windows 命令 shell 并以字符串的形式传递以便执行。任何输出都作为文本的行返回。 使用方法:xp_cmdshell { 'command_string' } [ , no_output ] xp_cmdshell可以让系统管理员以操作系统命令行解释器的方式执行给定的命令字符串,并以文本行方式返回任何输出,是一个功能非常强大的扩展存贮过程。一般情况下,xp_cmdshell...
阅读全文