SQLite
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> SQLite

java.lang.IllegalStateException:Không thể đọc hàng 0, cột -1 từ CursorWindow - Sự cố Android sqlite

Dòng thứ ba là vấn đề. Xem đầu ra logcat của bạn và các nguồn Android (tìm kiếm trong các nguồn để "yêu cầu tên cột với tên bảng"). Bây giờ hãy xem đầu ra logcat của bạn. Dòng có câu này chứa tên cột bạn đang yêu cầu:/mnt/sdcard/googleCheckout/Saxo Trader.apk . Giá trị này đến từ con trỏ kết quả của bạn. Tất nhiên db của bạn không chứa cột này :-)

Thay thế các dòng

     String url = c.getString(c.getColumnIndex(c.getString(0)));
     String code = c.getString(c.getColumnIndex(c.getString(1)));

với

     String url = c.getString(c.getColumnIndex("reco_index_user_action_download_file"));
     String code = c.getString(c.getColumnIndex("reco_index_content_code"));

Tôi cũng khuyên bạn nên kéo mã để nhận các chỉ số từ bên trong vòng lặp ra bên ngoài vòng lặp. Không cần phải yêu cầu các chỉ số lặp đi lặp lại.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhà phát triển thực thể và Nhà cung cấp dữ liệu ADO.Net Hiện hỗ trợ Khung thực thể Core 5

  2. Chèn nhiều hàng trong lỗi SQLite (mã lỗi =1)

  3. SQLite là gì?

  4. SQLite Sum () so với Total ():Sự khác biệt là gì?

  5. Cách hoạt động của SQLite Nullif ()