在SQL Server中如何用通配符搜索TEXT欄
一個(gè)應(yīng)用Informix數(shù)據(jù)庫的同事需要用通配符搜索TEXT欄。雖然Informix在LIKE與MATCH聲明中支持通配符,這一支持并不包括TEXT欄。將數(shù)據(jù)輸出給SQL Server的解決方案明顯支持這種搜索。
要完成搜索,我的同事必須讓Informix將有用數(shù)據(jù)輸出到一個(gè)文本文件中。然后,一個(gè)SQL Server DTS包將文本文件輸入到SQL Server的一個(gè)當(dāng)?shù)貙?shí)例中,然后在其中用通配符對TEXT欄進(jìn)行處理。
不幸地是,還存在兩個(gè)問題:1)連接緩慢且在輸入完成前經(jīng)常中斷連接。2)如果決定中途取消操作,SQL Server放棄這時(shí)已經(jīng)處理的所有行為。他必須想出辦法,每n個(gè)記錄提交一次,然后再繼續(xù)操作。
為了給他找到解決辦法,我在DTS向?qū)е修D(zhuǎn)悠。發(fā)現(xiàn)解決方案已內(nèi)置在DTS中。
為說明如何操作,我建立一個(gè)DTS包,將Northwind Customers數(shù)據(jù)庫輸出到一個(gè)文本文件中。然后,我建立一個(gè)新包把這個(gè)文本文件輸入到一個(gè)稱作Northwind_New的Northwind拷貝中。在DTS向?qū)е?,其結(jié)果如圖1所示。現(xiàn)在,我將鼠標(biāo)放在管道上,右擊然后選擇屬性,出現(xiàn)名為“轉(zhuǎn)換數(shù)據(jù)任務(wù)屬性”的對話框。這時(shí)要用到的標(biāo)簽為選項(xiàng)(Options),如圖2所示。
要用的選項(xiàng)為“總是提交最后批”與“插入批大小”。第一個(gè)選項(xiàng)不需加以說明;后一個(gè)選項(xiàng)對插入到批中的行數(shù)進(jìn)行控制。你可以對它進(jìn)行調(diào)整以滿足你的要求與應(yīng)用情形。默認(rèn)設(shè)置為0,也就是我的同事經(jīng)歷的情形,如果出現(xiàn)故障,整個(gè)批全部丟失。設(shè)置1迫使每次插入后進(jìn)行提交。設(shè)置100或1000則每100或1000行提交一次。
現(xiàn)在我的同事的問題解決了,他正高興地用通配符搜索TEXT欄。
相關(guān)文章:
1. 關(guān)于Oracle中sqlldr的用法大全2. Mybatis 將table表名作為參數(shù)傳入操作3. MySQL修改字符集的實(shí)戰(zhàn)教程4. 使用SQL語句快速獲取SQL Server數(shù)據(jù)字典5. 探討SQL Server 2005.NET CLR編程6. SQL Server中, DateTime (日期)型操作7. Microsoft SQL Server 查詢處理器的內(nèi)部機(jī)制與結(jié)構(gòu)(1)8. 淺談如何將Oracle導(dǎo)出到XML文件9. Oracle中的高效SQL編寫PARALLEL解析10. 何時(shí)Oracle使用綁定變量性能反而更差
