yin_home/sqllineage.py

40 lines
1.2 KiB
Python
Raw Normal View History

2025-02-11 16:04:10 +08:00
from flask import Flask, render_template, request, jsonify
from utils.sql_parse import parse_create_table_sql
from utils.log import Log
app = Flask(__name__)
log = Log().getlog()
@app.route('/')
def index():
return render_template('index.html')
@app.route('/convert', methods=['POST'])
def convert_sql():
sql_input = request.form['sql']
if sql_input.strip()=='':
return jsonify({
'parsed_result': "请在上面输入框输入hologres建表语句",
'message': 'SQL processed.'
})
hologres_connection = request.form['hologresConnection']
log.info("SQL Input: %s", sql_input)
log.info("SQL hologres_connection: %s", hologres_connection)
try:
parsed_result=parse_create_table_sql(sql_input,hologres_connection)
result = {
'parsed_result': parsed_result,
'message': 'SQL processed successfully.'
}
except Exception as e:
result = {'error': f'请检查输入sql:\n\n {str(e)}'}
log.info("SQL result: %s", result)
return jsonify(result)
if __name__ == '__main__':
# 指定host和port这里使用0.0.0.0可以让服务器被外部访问
app.run(host='0.0.0.0', port=8778, debug=True)