Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created on 03-16-2018 12:40 PM - edited 08-18-2019 12:57 AM
I want to exclude the list of the tables which matched the regex pattern in list database tables. Can we do something like negate(or workaround to exclude tables which matches pattern) to TableNamePattern property to exclude the tables which have same pattern.
Created 03-16-2018 12:48 PM
Method1:-
You can do by using RouteonAttribute processor with negate expression by using not function.
exclude tables
${db.table.name:in("table_name1,table_name2,table_name3"):not()}with the above expression we are going to exclude all the table names that are listed.
(or)
using startsWith function
${db.table.name:startsWith("table_"):not()}with above expression we are matching all table names that starts with table_ and using not to exclude them.
Method2:-
including all the possible tablename patterns in regex by using or operator (|)
Table schema pattern
A pattern for matching tables in the database. Within a pattern, "%" means match any substring of 0 or more characters, and "_" means match any one character. The pattern must match the table name as it is stored in the database. If the property is not set, all tables will be retrieved.
Example:-
if you are trying to exclude all the table that are not starting with ua (or) ub use the below regex pattern
[ua|ub]%
Now we are going to have all list of tables those are having names starting with ua (or) ub and having 0 or more characters.
[ua|ub]_
now with the above regex expression we are going to match all table names starting with ua (or) ub and match any one character after that.
Created 03-16-2018 12:48 PM
Method1:-
You can do by using RouteonAttribute processor with negate expression by using not function.
exclude tables
${db.table.name:in("table_name1,table_name2,table_name3"):not()}with the above expression we are going to exclude all the table names that are listed.
(or)
using startsWith function
${db.table.name:startsWith("table_"):not()}with above expression we are matching all table names that starts with table_ and using not to exclude them.
Method2:-
including all the possible tablename patterns in regex by using or operator (|)
Table schema pattern
A pattern for matching tables in the database. Within a pattern, "%" means match any substring of 0 or more characters, and "_" means match any one character. The pattern must match the table name as it is stored in the database. If the property is not set, all tables will be retrieved.
Example:-
if you are trying to exclude all the table that are not starting with ua (or) ub use the below regex pattern
[ua|ub]%
Now we are going to have all list of tables those are having names starting with ua (or) ub and having 0 or more characters.
[ua|ub]_
now with the above regex expression we are going to match all table names starting with ua (or) ub and match any one character after that.
Created 03-16-2018 01:28 PM
Hi @Shu,
Can we do something like, exclude table names that are starting with ua (or) ub?
Created 03-16-2018 01:34 PM
Could you please see my edited answer.
let me know if you still having issues ..