)初めまして.
Python初心者でコードを作成している者です.
Pythonでデータベースの内容を日付範囲で検索するプログラムを作成しています.
データベースはSQLite3を使用しています.
現在,日付を指定しても,検索機能が動きません.
コードを何度見直しても全く分かりません.
どなたかご教示いただけないでしょうか.
【エラーメッセージ】
特になし
【該当のソースコード】
import tkinter as tk from tkinter import ttk import sqlite3 #表示ボタンの機能 def selct_SQL(): tree.delete(*tree.get_children()) start = day_entry1.get() end = day_entry2.get() #デフォルト設定(空欄) if start == '': start = '1990-01-01' if end == '': end = '2100-01-01' #DB接続 conn = sqlite3.connect('DBファイル') cur = conn.cursor() #select文 cur.execute('''SELECT * FROM テーブル名 WHERE date BETWEEN '{}' AND '{}' ORDER BY date'''.format(start,end)) for i in cur: #ツリービューの要素に追加 tree.insert('','end',values=i) conn.close() #ウィンドウを作成,設定 root = tk.Tk() root.title('参照画面') root.geometry('700x670') #表示画面ラベル display_label = tk.Label(root) display_label['text'] = '【 表示画面 】' display_label['font'] =('',12) display_label['height'] = 2 display_label.pack(fill='x') #フレームの作成 frame_labelentry = tk.Frame(root,bd=2,relief='ridge') frame_labelentry.pack(pady=15) day_label = tk.Label(frame_labelentry) day_label['font'] = ('',14) day_label['text'] = '期間' day_label.pack(side='left') day_entry1 = tk.Entry(frame_labelentry) day_entry1['font'] =('',14) day_entry1['justify'] = 'center' day_entry1['width'] = 12 day_entry1.pack(side = 'left') day_entry1.get() day_labe2 = tk.Label(frame_labelentry) day_labe2['font'] = ('',14) day_labe2['text'] = ' ~ ' day_labe2.pack(side='left') day_entry2 = tk.Entry(frame_labelentry) day_entry2['font'] =('',14) day_entry2['justify'] = 'center' day_entry2['width'] = 12 day_entry2.pack(side = 'left') day_entry2.get() #表示ボタン display_button = tk.Button(root) display_button['text'] ='表示' display_button['font'] = ('',16) display_button['width'] =16 display_button['bg'] = 'gray' display_button['command'] = selct_SQL display_button.pack() #Treeview tree = ttk.Treeview(root,padding=10) tree['columns'] = (1,2,3,4,5) tree['show'] ='headings' style = ttk.Style() style.configure('Treeview',rowheight=60) style.configure("Treeview.Heading",font=("",12,'bold')) tree.column(1,width=110) tree.column(2,width=110) tree.column(3,width=110) tree.column(4,width=110) tree.column(5,width=200 ) tree.heading(1,text ='日付') tree.heading(2,text='顧客名') tree.heading(3,text='担当者') tree.heading(4,text='トラブル項目') tree.heading(5,text='対応内容') tree.pack(fill='x',padx=20,pady=20) root.mainloop()
使用しているサンプルデータイメージ
回答1件
あなたの回答
tips
プレビュー