摘要:
OLE DB Commond任务接受输入流中的行数据并执行一段SQL语句或自定义存储过程。这个转换和Execute Sql任务容易混淆,但是它非常类似于在ADO连接中循环接收一个结果集中的数据,创建,执行一个ADO命令。输入流中的参数数据可以提供给一个Sql命令或者存储过程。这里我们看到“循环”可能就会联想到另外一个词“性能”。这可能涉及到更新,插入,删除语句,每次都会有断开,连接的操作。但是并不意味着这个转换一无是处,这里我们着重理解这个任务如何配置和使用的。要注意有多少输入数据并在需要缓存数据到临时表或实际表时权衡性能和伸缩性,以达到最优效果。在配置这个任务的时候,基本点要点是设置能够获得 阅读全文
摘要:
在SSIS中的Row Count转换可以在数据流中计算数据源的行数。这种任务必须将行数保存在一个变量中。这种任务在你不想将数据行数保存在一个物理表中时会很有用。例如在ConditionalSplit任务中使用多个RowCount记录有多少行被分离出来,每个Row Count将使用变量记录分支中的数据行数,可以将这个变量值记录在数据库中,作为邮件信息发送出去,或者在下一个步骤中使用。一样这个任务需要使用高级编辑器,这个更加简单,只需要添加一个变量来存储行数。现在设想一个任务只有在数据流中的数据行数大于0的情况下才会执行,可以将此类推到任何按照不同条件执行task 的情况,在这里我们只简单举例说明 阅读全文
摘要:
在SSIS高级转换任务—导出列这一篇随笔中主要完成的是把数据库中的文件列导出,这里将讨论如何将文件导入到数据库中,它和导出列任务是一对经常搭配使用的任务。当我们搞清楚它们实现什么功能的时候会发现原来的名字更加贴切。这种转换将系统文件路径中的物理文件转化为数据库中的表数据,反之亦然。理解输入列任务的关键是输入源中至少有一列保存将要导入到数据库中的文件的路径,还需要目标列保存文件和文件路径。这种转换仍然使用高级编辑。就因为它是高级编辑所以不够直观,也没有类似于向导一样的设置,但是熟悉之后使用它将会很方便。在高级编辑中没有类似将两列合并成一列这样的设置所以如果源数据中文件路径和文件名字是分离的,需要 阅读全文
摘要:
在开发过程中会遇到需要弄清楚这个数据库什么时候建的,这个数据库中有多少表,这个存储过程长的什么样子等等信息,今天把自己工作过程中经常用到的一些数据库引擎存储过程,系统视图等等总结一下以备不时之用。下面的知识多是自己总结,有一些参考了MSDN。 sp_help有时候想尽快查出数据库对象的相关信息,这个存储过程就很有用了。使用它可以查询出整个数据库中所有对象的相关信息。直接运行sp_help结果如下图1,上面是数据库对象,包含系统自定义的表,视图等等,下面是自定义数据类型图1如果我只想找到某一中数据类型的长度,精度等信息可以运行sp_help datatypename,如下图2图2如果我想找出某. 阅读全文
摘要:
今天对分页语句做一个简单的总结,他们大同小异的,只要理解其中一个其他的就很好理解了。 使用top选项selecttop10*from Ordersa where a.orderid notin(selecttop10 orderid from Orders orderby orderid) orderby a.orderid 使用max函数这种方法的前提是有唯一值的一个列。selecttop10*from Orders a where a.orderid>(selectMAX(orderid) from (selecttop10 orderid from Orders orderby o 阅读全文
摘要:
园友总结的很全,可以当工具书查阅了。http://www.cnblogs.com/zhuzhiyuan/archive/2011/04/22/2024485.html,http://kb.cnblogs.com/a/1521799/后半部分是另外一位总结的http://www.cnblogs.com/artwl/archive/2011/01/05/1926179.html本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加、拷贝、删除、移动文件、创建目录、递归删除文件夹及文件、指定文件夹下 面的所有内容copy到目标文件夹下面、指定文件夹下面的所有内容Detele、读取文本 阅读全文
摘要:
T-SQL的在执行普通的查询的时候是很高效的,但是在执行循环,判断这样的语句的时候效率就不那么的高了。这时可以借助CLR了,我们可以在SQL Server 2008中扩展C#程序来完成循环等过程式的查询,或者其他SQL不便实现的功能。这个随笔中将介绍在SQL Server中扩展C#程序实现正则表达式的替换功能。新建一个类库程序命名为Regex,打开Visual Studio 2008,点击File,点击New,点击Project,在弹出的New Project对话框中选择Class Library,项目名称为Regex。将项目中的类Class1命名为Regex,在这个类中写入如下代码:us.. 阅读全文
摘要:
上一个随笔中我们提到了在Windows 7操作系统中配置ftp服务器并通过WinScp客户端来访问它,这样就可以方便的上传下载文件了。现在又有新的问题,我们发现如果项目中的文件很多,成百上千个文件,即使WinScp提供方便的文件拖拽功能,还是发现很繁杂。也许你会想到在dos中使用move命令,但是这个包含了cmd,cd,move等好几个命令,也是很费时间的。我们试图找到一种自动执行的程序,每隔一段时间来执行一次上传下载,这样我们的工作就很轻松了。这一次我们将使用dos命令做成bat文件,然后使用Task Scheduler调度bat来完成这个机械的,呆板的任务。感慨一下,只要我们想得到的,机器 阅读全文
摘要:
好久没有碰IIS服务器了,又忘的差不多了,这个随笔中我将介绍在Windows 7操作系统中通过IIS配置ftp服务器的步骤。在公司的网络环境中阻止了ftp访问,在这里我们使用工具WinScp作为客户端访问ftp服务器,WinScp作为一个小型的ftp客户端非常小巧灵活,它可以访问ftp,sftp,scp等服务。下面我们新建一个ftp服务,然后用WinScp访问这个站点。打开IIS中ftp服务。默认情况下在IIS服务器中不会开启ftp站点服务,所以需要我们手动打开该服务。依次点击Control Panel\All Control Panel Items\Programs and Features 阅读全文
摘要:
在上一个导入列这个例子中我们创建一个实际的表来存储文件路径,在生产环境中我们可能不会创建一个实际的物理表来存储这些信息,而是创建临时表。这里有一个小小的技巧,在Control Flow中拖放两个Execute SQL task,一个创建临时表,另一个销毁临时表,执行这个package,会遇到一个错误,在Progress中提示信息显示不存在这个临时表。错误信息如下:Error: 0xC002F210 at Execute SQL Task 1, Execute SQL Task: Executing the query "drop table #Table1" failed 阅读全文