mirror of
https://github.com/rbock/sqlpp11.git
synced 2026-05-02 17:09:46 -05:00
Add quoting for table and column names.
More reserved words have to be added to ddl2cpp
This commit is contained in:
+11
-1
@@ -249,6 +249,16 @@ if warnOnParse:
|
||||
|
||||
nsList = namespace.split('::')
|
||||
|
||||
def escape_if_reserved(name):
|
||||
reserved_names = [
|
||||
'GROUP',
|
||||
'ORDER',
|
||||
]
|
||||
if name.upper() in reserved_names:
|
||||
return '!{}'.format(name)
|
||||
return name
|
||||
|
||||
|
||||
# PROCESS DDL
|
||||
tableCreations = ddl.parseFile(pathToDdl)
|
||||
|
||||
@@ -292,7 +302,7 @@ for create in tableCreations:
|
||||
print(' {', file=header)
|
||||
print(' struct _alias_t', file=header)
|
||||
print(' {', file=header)
|
||||
print(' static constexpr const char _literal[] = "' + sqlColumnName + '";', file=header)
|
||||
print(' static constexpr const char _literal[] = "' + escape_if_reserved(sqlColumnName) + '";', file=header)
|
||||
print(' using _name_t = sqlpp::make_char_sequence<sizeof(_literal), _literal>;', file=header)
|
||||
print(' template<typename T>', file=header)
|
||||
print(' struct _member_t', file=header)
|
||||
|
||||
Reference in New Issue
Block a user