我有几个保存的项目,我在命令行中使用它们来比较数据库和 TFS。我的一个数据库有大量与 asp.net 相关的表,这些表都在表名中包含“aspnet”,我正试图将它们过滤掉。
我通过 .scp 文件中的 gui 创建了过滤器,但它似乎没有被拾取。(从 scp 文件中提取..)
<Table version="1">
<Include>False</Include>
<Expression>(@NAME LIKE 'xx%') OR (@NAME LIKE 'aspnet%')</Expression>
</Table>
然后我通过 GUI 再次创建了一个单独的过滤器,并使用 /filter 开关从命令行调用它,但它再次没有被使用。(从 .scpf 文件中提取)
<Table version="1">
<Include>False</Include>
<Expression>(@NAME LIKE 'xx%') OR (@NAME LIKE 'aspnet%')</Expression>
</Table>
如果我将 /filter 开关更改为指向一个不存在的文件,它会出错,所以大概它正在使用 filter 开关,并且确实在输出中列出了它。
Argument /filter has value 'DatabaseNameFilter.scpf'
请问我在这里缺少什么?
这是完整的命令行
"C:\Program Files (x86)\Red Gate\SQL Compare 10\sqlcompare.exe" /project:"C:\Users\CIUser\Documents\SQL Compare\SharedProjects\MyDB (Head) v MyDB.scp" /assertidentical /password1:mypassword /include:identical /Report:myreport.html /ReportType:Simple /Options:Default,ForceColumnOrder,IgnoreCollations,oec,IncludeDependencies /verbose /force /filter:MyFilter.scpf >f.txt