나는 Tkinter와 함께 일하고 있었고 내 Treeview의 다른 테이블에서 다른 열을 얻으려고 노력하고 있습니다 .SQLite 를 데이터베이스로 사용하고 있습니다. 레지스터 라는 첫 번째 테이블에서 다른 열 ID 카드, 이름, 성, 휴대폰, 주소가 있습니다. , 이메일 등 출석 이라는 두 번째 테이블 에 ID 번호로 출석을 저장하는 데 사용합니다. 즉 cardin = entry1
, 두 개의 항목이 cardout = entry1
있으므로 내 항목 중 하나가 내 레지스터 테이블 idcard 와 일치 하면 자동으로 idcard, timein, timeout, date를 저장 합니다. 내 출석 테이블 에서 잘 작동하지만 첫 번째 테이블 레지스터 에서 이름, 성 열 을 가져올 수 없습니다.내 idcard, timein, timeout, date (idcard, 이름, 성이 첫 번째 테이블과 일치해야 함)와 동일하게 두 번째 테이블 참석자 에 저장합니다. 해결하려고했지만 실패했습니다. 미리 도와주세요. 좋은 하루 되세요. 내 코드는 다음과 같습니다.
def botoningreso():
time = datetime.now().strftime("%I:%M%p")
date = datetime.now().strftime("%d/%m/%Y")
conn = sqlite3.connect('database.db')
c = conn.cursor()
cardin = entry1.get()
cardout = entry2.get()
c.execute('SELECT * FROM registers WHERE idcard = ? OR idcard = ?', (cardin, cardout))
if c.fetchall():
messagebox.showinfo(title='ID Registered', message='Registered Succefully')
c.execute("INSERT INTO attendance (timein, idcard, date) VALUES (?, ?, ?)", (time, cardin, date)) #Here i also wanto to save *names and surnames* from the first table *registers* that match with the idcard column.
conn.commit()
else:
messagebox.showerror(tittle=None, message='Wrong ID card')
c.close()
가져온 데이터에 변수를 할당 한 다음 색인을 생성하고 계속합니다.
data = c.fetchall()
if data:
username = data[0][1] # Access username from fetched list
surname = data[0][2] # Access surname
messagebox.showinfo(title='ID Registered', message='Registered Succefully')
c.execute("INSERT INTO attendance (timein,idcard,date,user,sur) VALUES (?,?,?,?,?)", (time,cardin,date,username,surname))
conn.commit()
변수가 c.fetchall()
생성기 객체처럼 동작하고 사용 된 후에는 항목이 손실되므로 에 할당하는 것이 중요합니다 .
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다