使用python写了一个sql填充工具

python 复制代码
import tkinter as tk
from tkinter import ttk, scrolledtext

def fill_template():
    old_id = old_id_entry.get()
    new_id = new_id_entry.get()
    old_code = old_code_entry.get()
    new_code = new_code_entry.get()
    old_name = old_name_entry.get()
    new_name = new_name_entry.get()
    district_code = district_code_entry.get()
    province_city_district = province_city_district_entry.get()
    manage_gbcode = district_code_entry.get()
    manageorg_name = new_name_entry.get()
    p3_code = manage_gbcode[:2]
    c3_code = manage_gbcode[2:4]
    d3_code = manage_gbcode[4:6]
    s3_code = manage_gbcode[6:]
    sql_template = f"""
-- 3. Delete organization and clear user integration information
update roar_psy.organizations o set o.status = '1' where o.org_id = {old_id}; 
update roar_psy.users t
   set t.last_upload_message = '', t.is_async = '', t.is_pass = ''
 where t.org_id = {old_id};
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
-- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
-- 4. Process business data
-- Management organization 
-- Check 1
select count(*) from t_a_Disease_Info t where t.manageorg_id = {old_id};
       
-- 1. Basic information
update t_a_Disease_Info t
   set t.manageorg_code      = '{new_code}',
       t.manageorg_code_tmp  = '',
       t.manageorg_gbcode    = '{district_code}',
       t.manageorg_name      = '{new_name}',
       t.is_grab             = '',
       t.last_upload_message = '',
       t.grab_date           = t.modify_date, t.manageorg_id = {new_id}
 where t.manageorg_id = {old_id};
 -- Check 2
select count(*) from t_a_Disease_Info t where t.manageorg_id = {old_id};
-- More update statements...
"""
    output_text.delete('1.0', tk.END)
    output_text.insert(tk.INSERT, sql_template)

root = tk.Tk()
root.title("SQL Template Filler")

ttk.Label(root, text="Old Org ID:").grid(column=0, row=0)
old_id_entry = ttk.Entry(root)
old_id_entry.grid(column=1, row=0)

ttk.Label(root, text="New Org ID:").grid(column=0, row=1)
new_id_entry = ttk.Entry(root)
new_id_entry.grid(column=1, row=1)

ttk.Label(root, text="Old Org Code:").grid(column=0, row=2)
old_code_entry = ttk.Entry(root)
old_code_entry.grid(column=1, row=2)

ttk.Label(root, text="New Org Code:").grid(column=0, row=3)
new_code_entry = ttk.Entry(root)
new_code_entry.grid(column=1, row=3)

ttk.Label(root, text="Old Org Name:").grid(column=0, row=4)
old_name_entry = ttk.Entry(root)
old_name_entry.grid(column=1, row=4)

ttk.Label(root, text="New Org Name:").grid(column=0, row=5)
new_name_entry = ttk.Entry(root)
new_name_entry.grid(column=1, row=5)

ttk.Label(root, text="New District Code:").grid(column=0, row=6)
district_code_entry = ttk.Entry(root)
district_code_entry.grid(column=1, row=6)

ttk.Label(root, text="New Province/City/District:").grid(column=0, row=7)
province_city_district_entry = ttk.Entry(root)
province_city_district_entry.grid(column=1, row=7)

fill_button = ttk.Button(root, text="Fill Template", command=fill_template)
fill_button.grid(column=1, row=8)

output_text = scrolledtext.ScrolledText(root, width=80, height=20)
output_text.grid(column=0, row=9, columnspan=2)

root.mainloop()
相关推荐
码界奇点2 分钟前
灵活性与高性能兼得KingbaseES 对 JSON 数据的全面支持深度解析
数据库·json·es
ada7_7 分钟前
LeetCode(python)22.括号生成
开发语言·数据结构·python·算法·leetcode·职场和发展
2501_941871459 分钟前
面向微服务链路追踪与全局上下文管理的互联网系统可观测性设计与多语言工程实践分享
大数据·数据库·python
luoluoal9 分钟前
基于python的语音和背景音乐分离算法及系统(源码+文档)
python·mysql·django·毕业设计·源码
love530love23 分钟前
EPGF 新手教程 12在 PyCharm(中文版 GUI)中创建 Poetry 项目环境,并把 Poetry 做成“项目自包含”(工具本地化为必做环节)
开发语言·ide·人工智能·windows·python·pycharm·epgf
cute_ming24 分钟前
从 Node.js + TypeScript 无缝切换到 Python 的最佳实践
python·typescript·node.js
·云扬·26 分钟前
MySQL单机多实例部署两种实用方法详解
数据库·mysql·adb
odoo中国26 分钟前
Pgpool-II 在 PostgreSQL 中的用例场景与优势
数据库·postgresql·中间件·pgpool
男孩李27 分钟前
postgres数据库常用命令介绍
数据库·postgresql
2501_9418705638 分钟前
从配置频繁变动到动态配置体系落地的互联网系统工程实践随笔与多语言语法思考
java·前端·python