wyświetlanie bazy sqlite

0

Wywala mi gdy chce podejrzeć produkty już na tel. Może ktoś rzucić okiem i powiedzieć co jest źle? Skończyły mi sie pomysły na to gdzie moze byc błąd... z góry dzięki za pomoc.


package com.kalkulator;

import android.app.AlertDialog;
import android.database.Cursor;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class produkty extends AppCompatActivity {

        DatabaseHelper myDb;
        EditText editnazwa,editww,editwbt;
        Button btnAddData;
        Button btnviewAll;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_produkty);
            myDb = new DatabaseHelper(this);

            editnazwa = (EditText)findViewById(R.id.editText_nazwa);
            editww = (EditText)findViewById(R.id.editText_ww);
            editwbt = (EditText)findViewById(R.id.editText_wbt);
            btnAddData = (Button)findViewById(R.id.button5);
            btnviewAll=(Button)findViewById(R.id.button6);
            AddData();
            viewAll();
        }

        public  void AddData() {
            btnAddData.setOnClickListener(
                    new View.OnClickListener() {
                        @Override
                        public void onClick(View v) {
                            boolean isInserted = myDb.insertData(editnazwa.getText().toString(),
                                    editww.getText().toString(),
                                    editwbt.getText().toString());
                            if (isInserted = true)
                                Toast.makeText(produkty.this, "Produkt został dodany", Toast.LENGTH_LONG).show();
                            else
                                Toast.makeText(produkty.this, "Produkt nie został dodany", Toast.LENGTH_LONG).show();
                        }
                    }
            );
        }

    public void viewAll(){
        btnviewAll.setOnClickListener(
            new View.OnClickListener(){
                @Override
                public void onClick(View v){
                   Cursor res = myDb.getAllData();
                    if(res.getCount()==0){

                        showMessage("Błąd", "Nie znaleziono produktów");
                        return;

                    }

                    StringBuffer buffer = new StringBuffer();
                    while (res.moveToNext()){
                        buffer.append("ID :"+ res.getString(0)+"\n");
                        buffer.append("NAZWA :"+ res.getString(1)+"\n");
                        buffer.append("WW :"+ res.getString(2)+"\n");
                        buffer.append("WBT :"+ res.getString(3)+"\n\n");
                    }
                    // show all data
                    showMessage("Data",buffer.toString());
                };
            }
        );
    }

    public void showMessage(String title,String Message){
        AlertDialog.Builder builder= new AlertDialog.Builder(this);
        builder.setCancelable(true);
        builder.setTitle(title);
        builder.setMessage(Message);
        builder.show();
    }

}

DataHelper:

package com.kalkulator;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;

/**
 * Created by ProgrammingKnowledge on 4/3/2015.
 */
public class DatabaseHelper extends SQLiteOpenHelper {
    public static final String DATABASE_NAME = "Produkty.db";
    public static final String TABLE_NAME = "produkty_table";
    public static final String COL_1 = "ID";
    public static final String COL_2 = "NAZWA";
    public static final String COL_3 = "WW";
    public static final String COL_4 = "WBT";

    public DatabaseHelper(Context context) {
        super(context, DATABASE_NAME, null, 1);
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL("create table " + TABLE_NAME + " (ID INTEGER PRIMARY KEY AUTOINCREMENT,NAZWA TEXT,WW INTEGER,MARKS INTEGER)");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS " + TABLE_NAME);
        onCreate(db);
    }

    public boolean insertData(String nazwa,String ww,String wbt) {
        SQLiteDatabase db = this.getWritableDatabase();
        ContentValues contentValues = new ContentValues();
        contentValues.put(COL_2,nazwa);
        contentValues.put(COL_3,ww);
        contentValues.put(COL_4, wbt);
        long result = db.insert(TABLE_NAME,null ,contentValues);
        if(result == -1)
            return false;
        else
            return true;
    }
    public Cursor getAllData(){
        SQLiteDatabase db = this.getWritableDatabase();
        Cursor res=db.rawQuery("select * from"+TABLE_NAME,null);
        return res;
    }
}

Dorzucić coś jeszcze z kodu?

0

Strzelam , ze jak robisz tabele co ma pola String Int Int a pozniej dodajesz String String String to moze byc cos nie tak.

ale co ja tam wiem ;P

0

wygląda na brak spacji między "from" a nazwą tabeli
Cursor res=db.rawQuery("select * from"+TABLE_NAME,null);
+
if (isInserted = true)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0