# generateChangeLog fails when a column name in the database contains a parenthesis

**URL:** <https://forum.liquibase.org/t/generatechangelog-fails-when-a-column-name-in-the-database-contains-a-parenthesis/2137>\
**Category:** General Discussion\
**Created:** [October 17, 2012, 8:04pm UTC](https://forum.liquibase.org/t/generatechangelog-fails-when-a-column-name-in-the-database-contains-a-parenthesis/2137 "2012-10-17T20:04:00Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Guest](https://avatars.discourse-cdn.com/v4/letter/g/8dc957/32.png) [@Guest](https://forum.liquibase.org/u/Guest)\
**Post date:** [October 17, 2012, 8:04pm UTC](https://forum.liquibase.org/t/generatechangelog-fails-when-a-column-name-in-the-database-contains-a-parenthesis/2137/1 "2012-10-17T20:04:00Z")

</div>

Hello,  
  
the Method AbstractDatabase.escapeColumnName() incorrectly assumes that column names that contain an opening parenthesis should not be quoted. I just tried to create a changelog from a SQL Server database that (for some very weird reasons) have a column named “Remote (flag)”.   
  
Now in the method JdbcDatabaseSnapshotGenerator.isColumnAutoIncrement() the following SELECT statement will be created:

1. SELECT Remote (flag)
2. FROM FooTable
3. WHERE 1=0

  
which obviously fails as there is no function called “Remote”. The column should have been fully quoted instead:  
  

1. SELECT "Remote (flag)"
2. FROM FooTable
3. WHERE 1=0

Now I full agree that having such a column name is more than just questionable, but still, it should have been treated correctly.   
  
Liquibase 1.9 can generate a changeLog from that database. This only happens with 2.0.x
