def syntactic_analysis(self, src):
i = inflect.engine()
relations = {}
foreign_keys = {}
for table in src:
for k, v in table.items():
if k == 'table_name':
foreign_keys[(i.singular_noun(v) if i.singular_noun(v) else v) + '_id'] = v
for table in src:
for k, v in table.items():
if k == 'table_name':
table_name = v
for e in table:
if 'column_name' in e:
if e['column_name'] in foreign_keys.keys():
relations[table_name + ':' + e['column_name']] = foreign_keys[e['column_name']] + ':id'
result = {}
result['src'] = src
result['relations'] = relations
return result
评论列表
文章目录