mirror of
https://github.com/midoks/mdserver-web.git
synced 2026-10-10 04:19:26 +08:00
Update index.py
This commit is contained in:
+40
-41
@@ -3127,9 +3127,9 @@ def syncDatabaseRepair(version=''):
|
||||
sync_count_data = sync_db.query(cmd_count_sql)
|
||||
print(f'sync count data cos:{time.time() - time_s:.4f}s')
|
||||
print(local_count_data,sync_count_data)
|
||||
# if local_count_data[0]['num'] == sync_count_data[0]['num']:
|
||||
# is_break = True
|
||||
# break
|
||||
if local_count_data[0]['num'] == sync_count_data[0]['num']:
|
||||
is_break = True
|
||||
break
|
||||
|
||||
diff = sync_count_data[0]['num'] - local_count_data[0]['num']
|
||||
print("diff," + str(diff)+' line data!')
|
||||
@@ -3149,45 +3149,44 @@ def syncDatabaseRepair(version=''):
|
||||
print('progress,%.2f' % progress+'%')
|
||||
mw.writeFile(table_name_pos_file, str(pos))
|
||||
else:
|
||||
if len(sync_select_data) == 0:
|
||||
continue
|
||||
for idx in range(len(sync_select_data)):
|
||||
insert_data = sync_select_data[idx]
|
||||
# print(insert_data)
|
||||
local_inquery_sql = 'select '+pkey_name+' from ' + table_name+ ' where ' +pkey_name+' = '+ str(insert_data[pkey_name])
|
||||
# print(local_inquery_sql)
|
||||
tdata = local_db.query(local_inquery_sql)
|
||||
# print(tdata)
|
||||
if len(tdata) == 0:
|
||||
print("id:"+ str(insert_data[pkey_name])+ " no exists, insert")
|
||||
insert_sql = 'insert into ' + table_name
|
||||
field_str = ''
|
||||
value_str = ''
|
||||
for field in insert_data:
|
||||
field_str += '`'+field+'`,'
|
||||
value_str += '\''+escape_string(str(insert_data[field]))+'\','
|
||||
field_str = '(' +field_str.strip(',')+')'
|
||||
value_str = '(' +value_str.strip(',')+')'
|
||||
insert_sql = insert_sql+' '+field_str+' values'+value_str+';'
|
||||
print(insert_sql)
|
||||
r = local_db.execute(insert_sql)
|
||||
print(r)
|
||||
else:
|
||||
if sync_select_data[idx] == local_select_data[idx]:
|
||||
continue
|
||||
print("id:"+ str(insert_data[pkey_name])+ " data is not equal, update")
|
||||
update_sql = 'update ' + table_name
|
||||
field_str = ''
|
||||
value_str = ''
|
||||
for field in insert_data:
|
||||
if field == pkey_name:
|
||||
if len(sync_select_data) != 0:
|
||||
for idx in range(len(sync_select_data)):
|
||||
insert_data = sync_select_data[idx]
|
||||
# print(insert_data)
|
||||
local_inquery_sql = 'select '+pkey_name+' from ' + table_name+ ' where ' +pkey_name+' = '+ str(insert_data[pkey_name])
|
||||
# print(local_inquery_sql)
|
||||
tdata = local_db.query(local_inquery_sql)
|
||||
# print(tdata)
|
||||
if len(tdata) == 0:
|
||||
print("id:"+ str(insert_data[pkey_name])+ " no exists, insert")
|
||||
insert_sql = 'insert into ' + table_name
|
||||
field_str = ''
|
||||
value_str = ''
|
||||
for field in insert_data:
|
||||
field_str += '`'+field+'`,'
|
||||
value_str += '\''+escape_string(str(insert_data[field]))+'\','
|
||||
field_str = '(' +field_str.strip(',')+')'
|
||||
value_str = '(' +value_str.strip(',')+')'
|
||||
insert_sql = insert_sql+' '+field_str+' values'+value_str+';'
|
||||
# print(insert_sql)
|
||||
r = local_db.execute(insert_sql)
|
||||
print(r)
|
||||
else:
|
||||
if sync_select_data[idx] == local_select_data[idx]:
|
||||
continue
|
||||
field_str += '`'+field+'`=\''+escape_string(str(insert_data[field]))+'\','
|
||||
field_str = field_str.strip(',')
|
||||
update_sql = update_sql+' set '+field_str+' where '+pkey_name+'=\''+str(insert_data[pkey_name])+'\';'
|
||||
print(update_sql)
|
||||
r = local_db.execute(update_sql)
|
||||
print(r)
|
||||
print("id:"+ str(insert_data[pkey_name])+ " data is not equal, update")
|
||||
update_sql = 'update ' + table_name
|
||||
field_str = ''
|
||||
value_str = ''
|
||||
for field in insert_data:
|
||||
if field == pkey_name:
|
||||
continue
|
||||
field_str += '`'+field+'`=\''+escape_string(str(insert_data[field]))+'\','
|
||||
field_str = field_str.strip(',')
|
||||
update_sql = update_sql+' set '+field_str+' where '+pkey_name+'=\''+str(insert_data[pkey_name])+'\';'
|
||||
# print(update_sql)
|
||||
r = local_db.execute(update_sql)
|
||||
print(r)
|
||||
if is_break:
|
||||
print("break all")
|
||||
break
|
||||
|
||||
Reference in New Issue
Block a user