sqlite 데이터베이스에서 레코드를 삭제하는 동안 오류가 발생했습니다.

바 바르 알리

안녕하세요, sqlite 데이터베이스에서 레코드를 삭제하는 동안 버그에 직면하고 있습니다. 그냥 Sqlite 클래스를 만드십시오. 하나는 내가 cartAdpter를 호출하는 placeorder 파일입니다 .holder.delete 버튼을 클릭하면 모든 레코드가 사용자 정의 목록에 표시됩니다. sqlite db의 obj를 만들고 delete 메서드를 호출하지만 exaption을 생성합니다.

주문 파일

public class PlaceOrder extends Activity {

    String [] pIds; 
    String [] pNames; 
    String [] pPrizes; 
    ListView lv;
    ImageView bck;
    String [] listImages;
    String food_id;
    String userdata[];
    Intent i;
    TextView totalprze;
    float tprize;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_place_order);

        lv=(ListView)findViewById(R.id.cart_list);
        bck=(ImageView) findViewById(R.id.placeholder_bg_btn);
        totalprze =(TextView) findViewById(R.id.place_order_price);

        i=new Intent(this,Menu.class);

        bck.setOnClickListener(new OnClickListener() {


            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                 Bundle bundle=new Bundle();

                    //bundle.putStringArray("images", ListImages);
                    bundle.putString("food_id", food_id);
                    bundle.putStringArray("images", listImages);
                    bundle.putStringArray("userData",userdata);
                    i.putExtras(bundle);
                    startActivity(i);
            }
        });


        if(this.getIntent().getExtras()!=null)
        {

         Bundle b=this.getIntent().getExtras();

         pIds=b.getStringArray("pId");
         pNames=b.getStringArray("PName");
         pPrizes=b.getStringArray("pPrize");
         userdata=b.getStringArray("userData");
         tprize=b.getFloat("totalprize");


         food_id=b.getString("food_id");
         listImages=b.getStringArray("images");
         String prz=Float.toString(tprize);
         totalprze.setText("$"+prz);
         lv.setAdapter(new cartAdapter(PlaceOrder.this, pIds, pNames, pPrizes));

       }
    }

}

cartAdapter 파일

public class cartAdapter  extends BaseAdapter{

     String [] pIdz;
     String [] pNamz;
     String [] pPrizs;
    // List<String> imges;
     Context context;
     private ShopingCartHelper obj;

     private static LayoutInflater inflater=null;
     JSONArray jCat = null;
     int count=0;
     ProgressDialog pDialog;


     public cartAdapter(PlaceOrder ctx,
             String[] pIds,String[] pNams, String[] pprise) {

         pIdz=pIds;
         pNamz=pNams;

         context=ctx;
         pPrizs=pprise;
         inflater = ( LayoutInflater )context.
                         getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        // TODO Auto-generated constructor stub

     }

        @Override
    public int getCount() {
        // TODO Auto-generated method stub
            if(pIdz==null){
                Toast.makeText(context, "There is issue with net connection.", Toast.LENGTH_LONG).show();
                //Intent i=new Intent(context,WelcomeActivity.class);
                //context.startActivity(i);
                return count ;
            }else{
                return pIdz.length;
            }

        }

    @Override
    public Object getItem(int position) {
        // TODO Auto-generated method stub
        return position;
    }

    @Override
    public long getItemId(int position) {
        // TODO Auto-generated method stub
        return position;

    }

    public class holder{
         TextView pid;
         TextView pname;
         TextView pprise;
         Button delete;
         ListView lv;

    }
    @Override
    public View getView(final int position, View convertView, ViewGroup parent) {

        final holder hldr=new holder();
        View rowView = null;
        Bitmap bitmap = null;



          rowView = inflater.inflate(R.layout.place_order_item_list, null);
          hldr.pid=(TextView) rowView.findViewById(R.id.item_id);
          hldr.pname=(TextView) rowView.findViewById(R.id.item_name);
          hldr.pprise=(TextView) rowView.findViewById(R.id.item_price);
          hldr.delete=(Button) rowView.findViewById(R.id.delete);       
          hldr.pid.setText(pIdz[position]);
          hldr.pname.setText(pNamz[position]);
          hldr.pprise.setText(pPrizs[position]);
          //
          //  Picasso.with(context).load(imgs[position]).into(hldr.img);
          hldr.delete.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                // rowView.remove(position); //removing from your List
                Toast.makeText(context, "Delete",Toast.LENGTH_LONG).show();
                int pid=Integer.parseInt(hldr.pid.getText().toString());

                obj.delProduct(pid);


              }
        });
           rowView.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
//              // TODO Auto-generated method stub
//               cartAdapter.this.pIdz.remove[position];

            //  Toast.makeText(context, "hi",Toast.LENGTH_LONG).show();
            }
        });
         return rowView;

        // TODO Auto-generated method stub
    }
}

쇼핑 카트 도우미 파일

public class ShopingCartHelper extends SQLiteOpenHelper{

   public static final String DATABASE_NAME = "cart.db";
   public static final String PRODUCT_TABLE_NAME = "prodcut";
   public static final String p_id = "id";
   public static final int VERSION =1;

  SQLiteOpenHelper helper;
  SQLiteDatabase db;
  // Context context;
   public ShopingCartHelper(Context context)
   {
      super(context, DATABASE_NAME , null, 1);

   }

   @Override
   public void onCreate(SQLiteDatabase db) {
      this.getWritableDatabase();
      db.execSQL(
      "create table prodcut " +
      "(id integer primary key, user_id text,product_name text,price text)"
      );
   }

   @Override
   public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      // TODO Auto-generated method stub
      db.execSQL("DROP TABLE IF EXISTS prodcut");
      onCreate(db);
   }

   public boolean insertProduct  (String user_id, String product_name, String price)
   {
      SQLiteDatabase db = this.getWritableDatabase();
      ContentValues contentValues = new ContentValues();
      contentValues.put("user_id", user_id);
      contentValues.put("product_name", product_name);
      contentValues.put("price", price);    
      db.insert("prodcut", null, contentValues);
      return true;
   }
   public void delProduct(int pid)
   {
     SQLiteDatabase database =this.getReadableDatabase();
     db.rawQuery( "delete * from prodcut where id="+pid+"", null );
   }


   public Cursor getData(String user_id){
      SQLiteDatabase db = this.getReadableDatabase();
      Cursor res =  db.rawQuery( "select * from prodcut where user_id="+user_id+"", null );
      return res;
   }

   public int numberOfRows(){
      SQLiteDatabase db = this.getReadableDatabase();
      int numRows = (int) DatabaseUtils.queryNumEntries(db, PRODUCT_TABLE_NAME);
      return numRows;
   }


}

오류

10-27 10:28:48.608: E/AndroidRuntime(925): FATAL EXCEPTION: main
10-27 10:28:48.608: E/AndroidRuntime(925): java.lang.NullPointerException
10-27 10:28:48.608: E/AndroidRuntime(925):  at student.briyani.cartAdapter$1.onClick(cartAdapter.java:114)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.view.View.performClick(View.java:3511)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.view.View$PerformClick.run(View.java:14105)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.os.Handler.handleCallback(Handler.java:605)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.os.Handler.dispatchMessage(Handler.java:92)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.os.Looper.loop(Looper.java:137)
10-27 10:28:48.608: E/AndroidRuntime(925):  at android.app.ActivityThread.main(ActivityThread.java:4424)
10-27 10:28:48.608: E/AndroidRuntime(925):  at java.lang.reflect.Method.invokeNative(Native Method)
10-27 10:28:48.608: E/AndroidRuntime(925):  at java.lang.reflect.Method.invoke(Method.java:511)
10-27 10:28:48.608: E/AndroidRuntime(925):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
10-27 10:28:48.608: E/AndroidRuntime(925):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
10-27 10:28:48.608: E/AndroidRuntime(925):  at dalvik.system.NativeStart.main(Native Method)
벤자민 샤르 바우

obj = new ShoppingCartHelper(context)어댑터 생성자에 추가 하십시오.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

phonegap 응용 프로그램에서 sqlite를 사용하여 내장 데이터베이스를 구현하는 동안 오류가 발생했습니다.

분류에서Dev

MySQL 데이터베이스에서 데이터를 선택하는 동안 오류가 발생했습니다.

분류에서Dev

데이터베이스에서 이미지를로드하는 동안 오류가 발생했습니다.

분류에서Dev

C #의 데이터베이스에서 데이터를 읽는 동안 오류가 발생했습니다.

분류에서Dev

sqllite에서 postgre django로 데이터베이스를 전환하는 동안 오류가 발생했습니다.

분류에서Dev

데이터베이스에서 DropDownListFor 채우기를 시도하는 동안 오류가 발생했습니다.

분류에서Dev

데이터베이스에 데이터를 삽입하는 동안 오류가 발생했습니다.

분류에서Dev

sqlite 데이터베이스 '테이블을 만들 수 없습니다'IOS7을 만드는 동안 오류가 발생했습니다.

분류에서Dev

Windows Phone 8.1 애플리케이션에서 SQLite 데이터베이스에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

SSRS에서 하드 코딩 된 데이터 세트를 만드는 동안 오류가 발생했습니다.

분류에서Dev

Access 데이터베이스로 데이터를 보내는 동안 오류가 발생했습니다.

분류에서Dev

'sqlite3'액티브 레코드 어댑터를로드하는 동안 오류가 발생했습니다. 그것이 의존하는 보석이 없습니까? sqlite3는 번들의 일부가 아닙니다. heroku 용 Gemfile에 추가

분류에서Dev

데이터베이스에서 가져오고 HTTP 응답에 결과를 반환하는 동안 오류가 발생했습니다.

분류에서Dev

데이터베이스에서 중복 데이터를 삭제하기 위해 mysql 쿼리를 작성하는 동안 오류가 발생합니다.

분류에서Dev

ConnectionString 속성이 초기화되지 않았습니다. 데이터베이스에 데이터를 삽입하는 동안 오류가 발생했습니다.

분류에서Dev

외부 C 함수에서 Modelica 레코드를 반환하는 동안 오류가 발생했습니다.

분류에서Dev

Elastic Search에서 인덱스를 삭제하는 동안 오류가 발생했습니다.

분류에서Dev

nvarchar에서 숫자로 데이터를 캐스트하는 동안 오류가 발생했습니다.

분류에서Dev

SQL 데이터베이스를 로컬에서 서버로 가져 오는 동안 오류가 발생했습니다.

분류에서Dev

단일 데이터베이스에서 두 개의 엔티티를 생성하는 동안 오류가 발생했습니다.

분류에서Dev

Percona Xtradbcluster : 도너 노드에서 데이터를 가져 오는 동안 오류가 발생했습니다.

분류에서Dev

노드 js 앱을 통해 openshift에서 mysql 데이터베이스에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

SD 카드에서 파일을 삭제하는 동안 오류가 발생했습니다.

분류에서Dev

codeigniter에서 두 날짜 사이에 데이터를 가져 오는 동안 오류가 발생했습니다.

분류에서Dev

ef 코어가 데이터를 시드하는 동안 오류가 발생했습니다.

분류에서Dev

JSP를 사용하여 Tomcat 서버의 Oracle 데이터베이스에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

Postgres의 배열에서 json 객체를 삭제하는 동안 오류가 발생했습니다.

분류에서Dev

Joomla에서 PGSQL 데이터베이스에 연결하는 동안 오류가 발생했습니다.

분류에서Dev

JavaFX에서 MYSQL 데이터베이스에 삽입하는 동안 오류가 발생했습니다.

Related 관련 기사

  1. 1

    phonegap 응용 프로그램에서 sqlite를 사용하여 내장 데이터베이스를 구현하는 동안 오류가 발생했습니다.

  2. 2

    MySQL 데이터베이스에서 데이터를 선택하는 동안 오류가 발생했습니다.

  3. 3

    데이터베이스에서 이미지를로드하는 동안 오류가 발생했습니다.

  4. 4

    C #의 데이터베이스에서 데이터를 읽는 동안 오류가 발생했습니다.

  5. 5

    sqllite에서 postgre django로 데이터베이스를 전환하는 동안 오류가 발생했습니다.

  6. 6

    데이터베이스에서 DropDownListFor 채우기를 시도하는 동안 오류가 발생했습니다.

  7. 7

    데이터베이스에 데이터를 삽입하는 동안 오류가 발생했습니다.

  8. 8

    sqlite 데이터베이스 '테이블을 만들 수 없습니다'IOS7을 만드는 동안 오류가 발생했습니다.

  9. 9

    Windows Phone 8.1 애플리케이션에서 SQLite 데이터베이스에 연결하는 동안 오류가 발생했습니다.

  10. 10

    SSRS에서 하드 코딩 된 데이터 세트를 만드는 동안 오류가 발생했습니다.

  11. 11

    Access 데이터베이스로 데이터를 보내는 동안 오류가 발생했습니다.

  12. 12

    'sqlite3'액티브 레코드 어댑터를로드하는 동안 오류가 발생했습니다. 그것이 의존하는 보석이 없습니까? sqlite3는 번들의 일부가 아닙니다. heroku 용 Gemfile에 추가

  13. 13

    데이터베이스에서 가져오고 HTTP 응답에 결과를 반환하는 동안 오류가 발생했습니다.

  14. 14

    데이터베이스에서 중복 데이터를 삭제하기 위해 mysql 쿼리를 작성하는 동안 오류가 발생합니다.

  15. 15

    ConnectionString 속성이 초기화되지 않았습니다. 데이터베이스에 데이터를 삽입하는 동안 오류가 발생했습니다.

  16. 16

    외부 C 함수에서 Modelica 레코드를 반환하는 동안 오류가 발생했습니다.

  17. 17

    Elastic Search에서 인덱스를 삭제하는 동안 오류가 발생했습니다.

  18. 18

    nvarchar에서 숫자로 데이터를 캐스트하는 동안 오류가 발생했습니다.

  19. 19

    SQL 데이터베이스를 로컬에서 서버로 가져 오는 동안 오류가 발생했습니다.

  20. 20

    단일 데이터베이스에서 두 개의 엔티티를 생성하는 동안 오류가 발생했습니다.

  21. 21

    Percona Xtradbcluster : 도너 노드에서 데이터를 가져 오는 동안 오류가 발생했습니다.

  22. 22

    노드 js 앱을 통해 openshift에서 mysql 데이터베이스에 연결하는 동안 오류가 발생했습니다.

  23. 23

    SD 카드에서 파일을 삭제하는 동안 오류가 발생했습니다.

  24. 24

    codeigniter에서 두 날짜 사이에 데이터를 가져 오는 동안 오류가 발생했습니다.

  25. 25

    ef 코어가 데이터를 시드하는 동안 오류가 발생했습니다.

  26. 26

    JSP를 사용하여 Tomcat 서버의 Oracle 데이터베이스에 연결하는 동안 오류가 발생했습니다.

  27. 27

    Postgres의 배열에서 json 객체를 삭제하는 동안 오류가 발생했습니다.

  28. 28

    Joomla에서 PGSQL 데이터베이스에 연결하는 동안 오류가 발생했습니다.

  29. 29

    JavaFX에서 MYSQL 데이터베이스에 삽입하는 동안 오류가 발생했습니다.

뜨겁다태그

보관