WIP: import JSON file
This commit is contained in:
parent
983995ef5b
commit
e56551d9a8
|
@ -112,6 +112,8 @@ class TableDefinition:
|
||||||
self.tableName = ""
|
self.tableName = ""
|
||||||
self.sqlStr = ""
|
self.sqlStr = ""
|
||||||
self.fields = {}
|
self.fields = {}
|
||||||
|
self.primarykeyFlag = False
|
||||||
|
self.uniqueFlag = False
|
||||||
|
|
||||||
|
|
||||||
def loadTable(self, tableName, sqlStr):
|
def loadTable(self, tableName, sqlStr):
|
||||||
|
@ -196,6 +198,14 @@ class TableDefinition:
|
||||||
if results:
|
if results:
|
||||||
field = self.fields[results.group(1)]
|
field = self.fields[results.group(1)]
|
||||||
field['primarykey'] = True
|
field['primarykey'] = True
|
||||||
|
self.primarykeyFlag = True
|
||||||
|
return False
|
||||||
|
# UNIQUE(field_name,
|
||||||
|
results = re.match(r'UNIQUE\((?:[`|\"|\'])*(\w+)(?:[`|\"|\'])*\,?', sqltext)
|
||||||
|
if results:
|
||||||
|
field = self.fields[results.group(1)]
|
||||||
|
field['unique'] = True
|
||||||
|
self.uniqueFlag = True;
|
||||||
return False
|
return False
|
||||||
# custom_ringtone TEXT
|
# custom_ringtone TEXT
|
||||||
results = re.match(r'(?:[`|\"|\'])*(\w+)(?:[`|\"|\'])*\s+(\w+)', sqltext)
|
results = re.match(r'(?:[`|\"|\'])*(\w+)(?:[`|\"|\'])*\s+(\w+)', sqltext)
|
||||||
|
@ -204,10 +214,19 @@ class TableDefinition:
|
||||||
newField['datatype'] = results.group(2)
|
newField['datatype'] = results.group(2)
|
||||||
return newField
|
return newField
|
||||||
# field_name)
|
# field_name)
|
||||||
results = re.match(r'(?:[`|\"|\'])*(\w+)(?:[`|\"|\'])*\)', sqltext)
|
results = re.match(r'(?:[`|\"|\'])*(\w+)(?:[`|\"|\'])*(\)?)', sqltext)
|
||||||
if results:
|
if results:
|
||||||
field = self.fields[results.group(1)]
|
field = self.fields[results.group(1)]
|
||||||
field['primarykey'] = True
|
field = self.fields[results.group(2)]
|
||||||
|
if (self.primarykeyFlag):
|
||||||
|
field['primarykey'] = True
|
||||||
|
if (field):
|
||||||
|
self.primarykeyFlag = False
|
||||||
|
elif (self.uniqueFlag):
|
||||||
|
field['unique'] = True
|
||||||
|
if (field):
|
||||||
|
self.uniqueFlag = False
|
||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
print 'INFO: field definition not recognized: "' + sqltext + '"'
|
print 'INFO: field definition not recognized: "' + sqltext + '"'
|
||||||
|
|
Loading…
Reference in New Issue