在SQL Server中如何用通配符搜索TEXT栏


  本文标签:TEXT 通配符 SQL Server

  一个应用Informix数据库的同事需要用通配符搜索TEXT栏  。虽然Informix在LIKE与MATCH声明中支持通配符,这一支持并不包括TEXT栏  。将数据输出给SQL Server的解决方案明显支持这种搜索  。

  要完成搜索,我的同事必须让Informix将有用数据输出到一个文本文件中  。然后,一个SQL Server DTS包将文本文件输入到SQL Server的一个当地实例中,然后在其中用通配符对TEXT栏进行处理  。

  不幸地是,还存在两个问题:1)连接缓慢且在输入完成前经常中断连接  。2)如果决定中途取消操作,SQL Server放弃这时已经处理的所有行为  。他必须想出办法,每n个记录提交一次,然后再继续操作  。

图1

  为了给他找到解决办法,我在DTS向导中转悠  。发现解决方案已内置在DTS中  。

  为说明如何操作,我建立一个DTS包,将Northwind Customers数据库输出到一个文本文件中  。然后,我建立一个新包把这个文本文件输入到一个称作Northwind_New的Northwind拷贝中  。在DTS向导中,其结果如图1所示  。现在,我将鼠标放在管道上,右击然后选择属性,出现名为“转换数据任务属性”的对话框  。这时要用到的标签为选项(Options),如图2所示  。

图2

  要用的选项为“总是提交最后批”与“插入批大小”  。第一个选项不需加以说明;后一个选项对插入到批中的行数进行控制  。你可以对它进行调整以满足你的要求与应用情形  。默认设置为0,也就是我的同事经历的情形,如果出现故障,整个批全部丢失  。设置1迫使每次插入后进行提交  。设置100或1000则每100或1000行提交一次  。

  现在我的同事的问题解决了,他正高兴地用通配符搜索TEXT栏  。