Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

UnboundLocalError:variabel lokal 'kursor' direferensikan sebelum penugasan

Anda hanya menentukan conn dan cursor di dalam blok if memeriksa nilai formulir. Jika blok tidak dimasukkan, blok tersebut tidak ditentukan, tetapi Anda tetap mencoba merujuknya untuk menutupnya. Anda hanya harus memanggil close pada keduanya jika Anda telah mendefinisikannya. Pindahkan conn = dan cursor = ke sebelum blok if, atau pindahkan close panggilan ke dalam blok.

Namun, masalah yang lebih besar adalah Anda salah paham/merumitkan cara menggunakan Flask-MySQLdb. Ini akan secara otomatis membuat koneksi dan menutupnya ketika permintaan selesai, yang juga menutup kursor. Cukup gunakan ekstensi seperti yang dijelaskan dalam dokumen .

...
cur = mysql.connection.cursor()
cur.callproc('sp_createUser', (name, email, hashed_password))
data = cur.fetchall()
...


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tidak dapat menambahkan driver mysql ke jboss

  2. MySQL:BATAS dengan persentase dari jumlah catatan?

  3. MySQL SELECT saja bukan nilai nol

  4. Kesalahan 1215:Tidak dapat menambahkan batasan kunci asing

  5. Evaluasi kelipatan Ekspresi 'IN' dalam klausa 'WHERE' di mysql