一个简陋的小工具
from PyQt5.Qt import *
import sys
import pyodbc
app = QApplication(sys.argv)
window = QWidget()
window.setWindowTitle('固定资产校正工具v1.0')
window.resize(480,180)
class Ui(QWidget):
def __init__(self):
self.label = QLabel (window)
self.qtext = QLineEdit (window)
def la(self, name, x, y):
self.label.setText(name)
self.label.move(x, y)
def qtx(self, a, b, c=0):
self.qtext.resize(150,20)
self.qtext.move(a, b)
self.qtext.setEchoMode(c)
def sl():
a = p1.qtext.text ()
b = p2.qtext.text ()
c = p3.qtext.text ()
return a, b, c
p1 = Ui()
p1.la('数据库名:', 10, 10)
p1.qtx(110, 5)
p2 = Ui()
p2.la('数据库用户名:', 10, 30)
p2.qtx(110, 25)
p3 = Ui()
p3.la('数据库密码:', 10, 50)
p3.qtx(110, 45, 2)
# --------------------------------------------------------------------------
class ODBC:
def __init__(self, server, uid, pwd, db, DRIVER='{SQL Server}'):
self.server = server
self.uid = uid
self.pwd = pwd
self.db = db
self.DRIVER = DRIVER
def GetConnect(self):
if not self.db:
raise (NameError, '没有设置数据库信息')
self.conn = pyodbc.connect (SERVER=self.server, UID=self.uid, PWD=self.pwd, DATABASE=self.db,
DRIVER=self.DRIVER)
cur = self.conn.cursor ()
if not cur:
raise (NameError, '连接数据库失败')
else:
return cur
def ExecQuery(self, sql):
cur = self.GetConnect ()
cur.execute (sql)
resList = cur.fetchall ()
self.conn.close ()
return resList
def ExecNonQuery(self, sql):
cur = self.GetConnect ()
cur.execute (sql)
self.conn.commit ()
self.conn.close ()
def main():
ms = ODBC(server='.', uid=sl()[1], pwd=sl()[2], db=sl()[0])
sql = ms.ExecNonQuery("update t_BOS200000005 set fnote = '这是一个备注xxoo'")
return '提示信息:执行成功'
# --------------------------------------------------------------------------
def set1():
if sl()[0] == '' or sl()[1] == '' or sl()[2] == '':
label1.setText('提示信息:信息不能为空')
else:
label1.setText (main())
label1 = QLabel('提示信息:',window)
label1.setGeometry(QRect(480, 480, 480, 20*1))
label1.move(10,150)
label2 = QLabel('Gpeak', window)
label2.setStyleSheet('font-variant: small-caps;font-size:80px;color:orange')
label2.move(300,20)
button = QPushButton('确认校正', window)
button.resize(100,50)
button.move(100,80)
button.clicked.connect(sl)
button.clicked.connect(set1)
window.show()
sys.exit(app.exec_())
万世不朽

浙公网安备 33010602011771号