我怎麼能執行一個通配符搜索,如果不同的字符串是通配符搜索
例之間:
我知道Tree_Mango_ *工作,如果所需的文件正在Tree_Mango_1,Tree_Mango_2等。
但是,如果我需要的是Tree_1_Mango,Tree_2_Mango,Tree_3_Mango等......那麼我將如何指定通配符?
我怎麼能執行一個通配符搜索,如果不同的字符串是通配符搜索
例之間:
我知道Tree_Mango_ *工作,如果所需的文件正在Tree_Mango_1,Tree_Mango_2等。
但是,如果我需要的是Tree_1_Mango,Tree_2_Mango,Tree_3_Mango等......那麼我將如何指定通配符?
Foreach File枚舉器容器的通配符將與Windows/DOS操作系統執行相同的操作。
*
將任選的匹配任何
?
將匹配一個字符
鑑於
我會用我的目錄
C:\SSISData\so\32061364>dir /b /s
C:\SSISData\so\32061364\Tree_1_Mango
C:\SSISData\so\32061364\Tree_2_Mango
C:\SSISData\so\32061364\Tree_3_Mango
C:\SSISData\so\32061364\Tree_4_MangoDB
C:\SSISData\so\32061364\Tree__Mango
的Tree_?_Mango
鑑於FileSpecification
以下內容,我用BIML創建一個簡單的包一個foreach文件枚舉。不熟悉Biml?安裝免費的附加組件BIDS Helper。添加一個新的Biml文件並粘貼以下聲明。右鍵單擊並生成SSIS包。
<Biml xmlns="http://schemas.varigence.com/biml.xsd">
<Packages>
<Package Name="TreeMango">
<Variables>
<Variable DataType="String" Name="CurrentFileName">mixed</Variable>
</Variables>
<Tasks>
<ForEachFileLoop
Folder="C:\SSISData\so\32061364"
FileSpecification="Tree_?_Mango"
Name="FELC Tree Mango">
<VariableMappings>
<VariableMapping VariableName="User.CurrentFileName" Name="0" />
</VariableMappings>
</ForEachFileLoop>
</Tasks>
</Package>
</Packages>
</Biml>
結果是Tree_1_Mango,Tree_2_Mango,Tree_3_Mango匹配我的通配符。 Tree_4_MangoDB和Tree__Mango不匹配。
非常感謝,它的工作原理。 – Dataman
在數據庫查詢?什麼SSIS運營商? –