qtdesigner-请假(仅仅是尝试使用软件)

在这里插入图片描述
下面是我给他们起的名字。
在这里插入图片描述
现在修改完名字之后,导出成MainWindow.ui文件
在这里插入图片描述
打开anaconda的shell
在这里插入图片描述
现在就产生了MainWindow.py,打开它
打开pycharm,创建一个新的名为askForLeave的project,把MainWindow.py移进来。
创建Leave.py作为主程序(起名废)

现在给MainWindow.py配置环境
在这里插入图片描述
写的代码如下

    def ask4leave(self):
        logmsg=''
        strSN=self.lineEdit_studentNumber.text()
        strCN=self.lineEdit_classNumber.text()
        strW=self.lineEdit_week.text()
        intW=int(strW)
        strO=self.lineEdit_order.text()
        intO=int(strO)
        strR=self.lineEdit_reason.text()
        print('Connecting to MSSQL...')
        cnxn = pyodbc.connect(
            'DRIVER={SQL Server};SERVER=localhost;DATABASE=register;UID=sa;PWD=gslsgsls')
        print('Connected...')
        cursor = cnxn.cursor()
        sql = "insert into 请假(学号,课程号,周次,编号,请假理由,处理状态) values("+strSN+","+strCN+","+intW+","+\
            intO+","+strR+",'未处理')"
        logmsg=sql
        try:
            cursor.execute(sql)
            cnxn.commit()
            cnxn.close()
            print("提交成功!")
            logmsg += "\n已提交!"
            self.lineEdit_studentNumber.clear()
            self.lineEdit_classNumber.clear()
            self.lineEdit_week.clear()
            self.lineEdit_order.clear()
            self.lineEdit_reason.clear()
            flag=1
        except:
            if flag==0:
                print("提交失败")
                logmsg += '提交失败'

现在尝试运行一下:
在这里插入图片描述
在这里插入图片描述
建立了一些脚手架

print('Connected...')
        cursor = cnxn.cursor()
        print("成功创建游标")
        print(strSN,strCN,intW,intO,strR)
        sql = "insert into registration values('" + strSN + "', '" + strCN + "', '" + intW + "', '" + intO + "', '" +strR+ "')"
        print('成功定义sql语句')
        logmsg=sql
        flag=0
        try:
            print("开始尝试")

在这里插入图片描述
所以问题出在赋值语句sql = "insert into registration values('" + strSN + "', '" + strCN + "', '" + intW + "', '" + intO + "', '" +strR+ "')"
原来问题出在python语句中int类型变量不能和字符串直接相加。
改成

sql = "insert into 请假(学号,课程号,周次,编号,请假理由,处理状态) values("+strSN+","+strCN+","+strW+","+strO+\
            ","+strR+",'未处理')"

现在的结果是这样的:
在这里插入图片描述
最后发现报错的原因还是这句sql的赋值语句,单引号忘记了,还有有些逗号是中文格式的。又修改了一下:

        sql = "insert into 请假(学号,课程号,周次,编号,请假理由,处理状态)values("+"'"+strSN+"'"+","+"'"+strCN+"'"+","\
              +strW+","+strO+","+"'"+strR+"'"+",'未处理')"

就成功了!!
所以以下是代码:

    def ask4leave(self):
        logmsg=''
        strSN=self.lineEdit_studentNumber.text()
        strCN=self.lineEdit_classNumber.text()
        strW=self.lineEdit_week.text()
        intW=int(strW)
        strO=self.lineEdit_order.text()
        intO=int(strO)
        strR=self.lineEdit_reason.text()


        print('Connecting to MSSQL...')
        cnxn = pyodbc.connect(
            'DRIVER={SQL Server};SERVER=localhost;DATABASE=register;UID=sa;PWD=gslsgsls')
        print('Connected...')
        cursor = cnxn.cursor()
        sql = "insert into 请假(学号,课程号,周次,编号,请假理由,处理状态)values("+"'"+strSN+"'"+","+"'"+strCN+"'"+","\
              +strW+","+strO+","+"'"+strR+"'"+",'未处理')"
        print(sql)
        logmsg=sql
        flag=0
        try:
            cursor.execute(sql)
            cnxn.commit()
            cnxn.close()
            print("提交成功!")
            logmsg += "\n已提交!"
            flag=1
            self.lineEdit_studentNumber.clear()
            self.lineEdit_classNumber.clear()
            self.lineEdit_week.clear()
            self.lineEdit_order.clear()
            self.lineEdit_reason.clear()
        except:
            if flag==0:
                print("提交失败")
                logmsg += '提交失败'

别忘了在setupUi里加一句:

self.pushButton.clicked.connect(self.ask4leave)

热门文章

暂无图片
编程学习 ·

Linux批量修改文件名

#!/bin/bash #生成文件的list文本,复制文件 for file in `cat val.txt` do cp val1/$file* val/ done#当前文件夹下重命名 for file in val/*-1.png; do mv "$file" "${file%-1.png}.png"; done
暂无图片
编程学习 ·

Python之OpenCV的学习(二)

图像 1.OpenCV读取图像的格式是BGR 2.shape属性 # 返回一个[h,w,c]元组,即height,width,通道数 img_shape = img.shape img_shape1 = img_shape[0] img_shape2 = img_shape[1] img_shape3 = img_shape[2]3.彩色图像与灰度图像 # cv2.IMREAD_COLOR; 彩色图像 # cv2.IMREAD_GRAY…
暂无图片
编程学习 ·

Java并发编程之深入理解volatile

个人博客请访问 http://www.x0100.top 1. 保证可见性volatile保证了不同线程对volatile修饰变量进行操作时的可见性。对一个volatile变量的读,(任意线程)总是能看到对这个volatile变量最后的写入。一个线程修改volatile变量的值时,该变量的新值会立即刷新到主内存中,…
暂无图片
编程学习 ·

nat表中的dnat snat的使用(iptables)

nat表中的dnat snat的使用- snatiptables -t nat -A POSTROUTING -o enp6s0 -j SNAT --to-source 172.25.254.33- dnatiptables -t nat -A PREROUTING -i enp6s0 -j DNAT --to-dest 170.25.254.22从enp6s0进来的所有数据都转给170.25.254.11,即给enp6s0(172.25.254.33)的所有…
暂无图片
编程学习 ·

老鸟带你回顾新人Java不容错过的八本好书

回头看看, 我进入Java 领域已经快15个年头了, 虽然学的也一般, 但是分享下我的心得,估计也能帮大家少走点弯路。 [入门] 我在2001年之前是C/C++阵营, 有C和面向对象的基础, 后来转到Java ,发现没有指针的Java真是好简单, 另外Java 的类库好用的让人哭啊。 后来我就看《…
暂无图片
编程学习 ·

2020.7.1崔庆才教材《Python3网络爬虫开发实战》3.4爬取猫眼电影排行代码更正(绕过美团验证码)

前情提要 首先附上崔大神的github源码:3.4爬取猫眼电影排行 毕竟此段代码完成时间较早,截至2020.7.1日,发现了此段代码中两个需要修改的地方。 希望能给学习崔大神的小白一些帮助,希望大家有个好前途。 一、猫眼电影反爬更新 下图是崔大神的代码:估计是太多人学习爬虫拿猫…
暂无图片
编程学习 ·

小甲鱼python听课笔记p11-p15

p11 7.1 列表1 = 打了激素的数组列表可以存放不同类型的数,还可以创建空列表append():向列表里面添加数据末尾添加一个元素但是只能一次插入一个数据extend():扩张的方式来扩展列表末尾添加多个元素,但要求已列表的格式添加[x,x,x,x]用一个列表来扩展另一个列表,所以他…
暂无图片
编程学习 ·

oracle创建修改等

–创建表空间 create tablespace newryb datafile D:\oracle\product\10.2.0\data\newryb.ora size 1024m;–创建用户 create user 登录帐号 identified by 登录密码 default tablespace 表空间名 temporary tablespace temp;–赋权 grant dba to 登录帐号;–修改oracle用户密码…
暂无图片
编程学习 ·

[C/C++]覆盖与隐藏

①类的名字查询逻辑:前后有继承关系的类,其作用域实际上是嵌套的,即虽然我们写成两个类,父类和子类,看上去好像是分离的,实际上,他们就是另一种我们常见的类的关系,就是嵌套类。当我们申请了一个子类的对象,调用其中的一个继承而来的公有函数的时候,编译器实际上是首…
暂无图片
编程学习 ·

VMware上安装达梦数据库8.0

VMware上安装达梦数据库8.0 VMware上安装达梦数据库8.0 本文指导达梦数据库8.0版本的安装,安装环境为中标麒麟7操作系统 第一步: 操作系统界面右键进入终端控制台,如下图所示:第二步: 规划dm8安装路径:首先,查看磁盘信息是否满足,如下图所示;2. 新建dm8安装目录,如下…
暂无图片
编程学习 ·

算子

算子:是一个函数空间到函数空间上的映射O:X→X。广义上的算子可以推广到任何空间,如内积空间等。 应用领域:数理科学 别 称:算符 外文名 :operator 应用领域:数理科学算子解释广义的算子, 对任何函数进行某一项操作都可以认为是一个算子,甚至包括求幂次,开方…
暂无图片
编程学习 ·

C++ builder listview 自绘条形图

菜鸟的学习笔记,如果对你有用最好。高手请无视。ListView 要开 Doublebuffervoid __fastcall TForm1::ListView1CustomDrawSubItem(TCustomListView *Sender, TListItem *Item,int SubItem, TCustomDrawState State, bool &DefaultDraw) { DefaultDraw=true; int lef=0; T…
暂无图片
编程学习 ·

操作系统-中断

什么是中断?中断是改变处理器执行指令顺序的一种事件。 这样的事件与CPU芯片内外部硬件电路产生的电信号相对应。为什么需要中断?有了中断后,使CPU可以与其他设备并行工作,能有效提高CPU的利用率,改善系统性能,支持系统的异步性。中断的类型 分为 : 同步中断(内部中…
暂无图片
编程学习 ·

算法笔记:字符串哈希初步

问题描述: 给出N个字符串,每个字符串由三位大写字母组成,再给出M个查询字符串,问每个查询字符串在N个字符串中出现的次数? 解题思路: 把字符串转化为整数,利用空间来换时间效率。 C/C++代码: #include<cstdio> #include<cstring> const int maxn=100; char…
暂无图片
编程学习 ·

Talent Challenge Program:专属在校大学生的远程实习培养计划来啦!

2020 开年的一场疫情,打得我们措手不及,往年一直幻想着可以有一个不用开学的假期,现在开学也变得遥遥无期,原本准备的暑期实习也因为不能到现场,一个个泡汤。这个暑假,还能做点什么才不虚度光阴? 不如了解一下“远程实习”——面向在校大学生的 Talent Challenge Progra…
暂无图片
编程学习 ·

标准序列化机制

序列化就是将对象转化为字节流,反序列化就是将字节流转化为对象。1. 基本用法Serializable要让一个类支持序列化,只需要让这个类实现接口 java.io.Serializable,Serializable 没有定义任何方法,只是一个标记接口。比如,对于57节提到的Student类,为支持序列化,可改为:pu…
暂无图片
编程学习 ·

20200701实习作业一

一个不像目录的目录写在前面小程序运行录屏三段代码(A&&B)打开文件“hello world” “hello 交大” 写在后面 写在前面今天是软件实习的第一天,老师布置了一个小作业,利用老古董MFC写一个小程序,说是想看看咱们的水平。好,不给点颜色看看,还真以为我很厉害了(手…
暂无图片
编程学习 ·

计算机组成原理复习 --- 第四章 指令系统

文章目录4.1 指令概述4.2 指令格式(重点)4.3 寻址方式 4.1 指令概述 计算机的指令有微指令、机器指令和宏指令。微指令为微程序级的命令,主要面向硬件,宏指令是由若干机器指令组成的软件指令,它是面向软件的。机器指令主要处在微指令和宏指令之间。 指令系统:一台计算机中…
暂无图片
编程学习 ·

爬虫项目(期末大作业)

项目要求基于第一个项目爬虫爬取的数据(3-5个数据源),完成数据展示网站。 基本要求: 1、用户可注册登录网站,非注册用户不可登录查看数据 2、用户注册、登录、查询等操作记入数据库中的日志 3、实现查询词支持布尔表达式 (比如“新冠 AND 肺炎”或者“新冠 OR 肺炎”) 4…