【发布时间】:2019-01-15 14:56:20
【问题描述】:
我的代码将仅存储数据“长号”和按钮单击的第一个“x”值,但是一旦再次单击按钮,它将不会将 x 的当前值替换为正确的值输出应该是 2
import sqlite3
import tkinter as tk
from tkinter import *
connecter = sqlite3.connect('IAworker.db')
c = connecter.cursor()
def create_security():
c.execute('CREATE TABLE IF NOT EXISTS security(username TEXT, password INT, teacherID INT, studentID INT, instrumentID INT)')
def create_Teacher_Info():
c.execute('CREATE TABLE IF NOT EXISTS teacher_info(teacherName TEXT, teacherID INT PRIMARY KEY)')
def create_Student_Info():
c.execute(
'CREATE TABLE IF NOT EXISTS student_info(Form TEXT, studentID INT PRIMARY KEY, studentName TEXT)')
def create_Instrument_Info():
c.execute('CREATE TABLE IF NOT EXISTS instrument_info( instrumentName TEXT, instrumentID INT PRIMARY KEY)')
c.close
create_security()
create_Teacher_Info()
create_Student_Info()
create_Instrument_Info()
def inserterInstTest(name, instID):
c = connecter.cursor()
c.execute('SELECT * FROM instrument_info')
[print(row) for row in c.fetchall()]
c.execute('INSERT OR REPLACE INTO instrument_info (instrumentName, instrumentID) VALUES (?, ?)', (name, instID))
# c.execute('UPDATE instrument_info SET instrumentName = (?) WHERE instrumentID = (?)', (name, instID))
connecter.commit()
c.close()
connecter.close
butt4 = tk.Button(root3_2, text="trombone+1",)#instrument buttons
butt4.grid(row=6, column=1, columnspan=3)#placement on window for buttons
def buttonClick3(x): #commands for buttons
print('button was clicked')
tromName = 'trombone'
x = x + 1
x = str(x)
print('days read =',x)
SqliteIA.inserterInstTest(tromName,x)
butt4.config(command=buttonClick3(trombones2))#configuring button commands
SQLiteIA.InserterInstTest(tromName, x) was used to call the function as its in another py file. but the code should replace the current
【问题讨论】:
-
您是否检查过您的代码是否正确递增
x?days read =行中代码的输出是什么?我会假设您的代码永远不会正确地重新配置buttonClick3命令以接受一个值。
标签: python-3.x tkinter sqlite