我想调用DatabaseMetaData的getTables方法,并获取名称不以“KB”开头的所有表。
我该怎么做? 感谢
答案 0 :(得分:0)
由于getTables()
接受(仅)LIKE
条件的标准SQL模式,我认为这不可行。
某些DBMS通过允许LIKE
条件的正则表达式违反(又称“扩展”)SQL标准(我认为SQL Server会这样做)。
查看DBMS的手册LIKE支持哪种表达式。
如果 支持正则表达式,您可以尝试使用^[^KB].*
作为表名参数的过滤条件。但这又是非标准的,并不适用于所有DBMS。