MCPcopy Create free account
hub / github.com/pgadmin-org/pgadmin4 / sql

Function sql

web/pgadmin/tools/erd/__init__.py:726–763  ·  view source on GitHub ↗
(trans_id, sgid, sid, did)

Source from the content-addressed store, hash-verified

724 endpoint='sql')
725@pga_login_required
726def sql(trans_id, sgid, sid, did):
727 data = json.loads(request.data)
728 with_drop = False
729 if request.args and 'with_drop' in request.args:
730 with_drop = True if request.args.get('with_drop') == 'true' else False
731
732 helper = ERDHelper(trans_id, sid, did)
733 conn = _get_connection(sid, did, trans_id)
734
735 sql = ''
736 tab_foreign_keys = []
737 all_nodes = data.get('nodes', {})
738
739 table_sql = ''
740 for tab_key, tab_data in all_nodes.items():
741 tab_fks = tab_data.pop('foreign_key', [])
742 tab_foreign_keys.extend(translate_foreign_keys(tab_fks, tab_data,
743 all_nodes))
744 table_sql += '\n\n' + helper.get_table_sql(tab_data,
745 with_drop=with_drop)
746
747 if with_drop:
748 for tab_fk in tab_foreign_keys:
749 fk_sql = fkey_utils.get_delete_sql(conn, tab_fk)
750 sql += '\n\n' + fk_sql
751
752 if sql != '':
753 sql += '\n\n'
754
755 sql += table_sql
756 for tab_fk in tab_foreign_keys:
757 fk_sql, _ = fkey_utils.get_sql(conn, tab_fk, None)
758 sql += '\n\n' + fk_sql
759
760 return make_json_response(
761 data=sql,
762 status=200
763 )
764
765
766@socketio.on('connect', namespace=SOCKETIO_NAMESPACE)

Callers 1

EditorFunction · 0.85

Calls 10

get_table_sqlMethod · 0.95
make_json_responseFunction · 0.90
ERDHelperClass · 0.85
translate_foreign_keysFunction · 0.85
popMethod · 0.80
extendMethod · 0.80
get_delete_sqlMethod · 0.80
_get_connectionFunction · 0.70
getMethod · 0.45
get_sqlMethod · 0.45

Tested by

no test coverage detected