2016-04-01 8 views
0

本質的には、データベーステーブルからIDを含む情報が必要です。 input.textの1()要素はIDの一つとして、データベースで発見された状態では、私はそれがXを実行することを期待し、その代わりに、ここでYアクセステーブルを基にしたforループに関する問題

`DBConnect = pyodbc.connect('Driver={Microsoft Access Driver (*.mdb, *.accdb)}; Dbq=C:\\A\\B\\C;') 
    DBSelect = DBConnect.cursor() 
    DBSelect.execute("select * from ...) 
    Row = DBSelect.fetchall() 
    Update = False 
    for field in Row: 
     Appointment_ID = field[0] 
     print(Appointment_ID) 
     Selected_ID = self.ui.input.text() 
     Selected_ID = str(Selected_ID) 
     print(Selected_ID, "this is selected") 
     print(Update) 

     if Appointment_ID == Selected_ID: 
      Update = True 

    print(Update, "this is update") 
    if Update == True: 
     run X 
    else: 
     run Y` 

をバイパスし、実行し、プリントアウトがあることですときに私の入力141、およびこれが選択されている141 、140 、偽 、これが選択されている141 、あなたはそれを更新= Trueの出力に

139を生成しません見ることができるように、このコードの実行時に生成 False、 141、 141これが選択されています。 False、 これは更新です

答えて

0

あなたはバグがあります。更新== Trueは、ループ内でUpdate = Trueにする必要があります。

+0

返信ありがとうございます。しかし、 '='の1つに置き換えられてもそれほど効果はありませんでした。代わりに、この構文エラーが生成されます。 'もしupdate = Trueならば: ^ SyntaxError:構文が無効です.' – Ynnekb55

+0

ここに誰か助けてもらえますか? – Ynnekb55

+0

これは、あなたが変更する必要がある他のUpdate == Trueです。ループ内の* * –

関連する問題