THE GET_LEFT
Membro
Boas, eu queria inserir estes dois dados na minha base de dados, o nome do produto e a quantidade, so que aparece esta mensagem de erro:
"Erro ao criar produto", isto é minha mensagem de erro para obter a informaçao que nao inseriu.
isto é a minha activity inserir:
Minha classe:
e a minha bd:
"Erro ao criar produto", isto é minha mensagem de erro para obter a informaçao que nao inseriu.
isto é a minha activity inserir:
Código:
package com.example.rafa.ganhemais;
import android.content.Intent;
import android.database.Cursor;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Display;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import android.util.Log;
import java.util.ArrayList;
import java.util.List;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class Add_Produto extends AppCompatActivity {
//Adapter
DBAdapter db;
Button bt_add;
Produto Produto;
EditText nome_produto, quantidade;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add__produto);
db = new DBAdapter(this);
nome_produto = (EditText) findViewById(R.id.edProduto);
quantidade = (EditText) findViewById(R.id.edQuantidade);
bt_add = (Button) findViewById(R.id.bt_inserir_produto);
bt_add.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Produto = new Produto(nome_produto.getText().toString(), quantidade.getText().toString() );
AddProduto(Produto);
Intent intent = new Intent(v.getContext(), Add_Produto.class);
startActivity(intent);
}
});
}
public void AddProduto(Produto Produto)
{
db.open();
if (db.insertProduto(Produto.getNome_Produto(), Produto.getQuantidade()) >= 0)
Toast.makeText(this, "Produto Adicionado", Toast.LENGTH_LONG).show();
else
Toast.makeText(this, "Erro ao criar produto", Toast.LENGTH_LONG).show();
db.close();
};
}
Minha classe:
Código:
package com.example.rafa.ganhemais;
/**
* Created by Rafa on 10/06/2017.
*/
public class Produto {
//variaveis
private int id__Produto;
private String nome_Produto;
private String Quantidade;
//construtor
public Produto(String Quantidade) {
this.Quantidade = Quantidade;
}
public Produto(int id__Produto, String nome_Produto, String Quantidade) {
this.id__Produto = id__Produto;
this.nome_Produto = nome_Produto;
this.Quantidade = Quantidade;
}
public Produto() {
}
public Produto(String nome_Produto, String Quantidade) {
this.nome_Produto = nome_Produto;
this.Quantidade = Quantidade;
}
public int getId__Produto() {
return id__Produto;
}
public void setId__Produto(int id__Produto) {
this.id__Produto = id__Produto;
}
public String getNome_Produto() {
return nome_Produto;
}
public void setNome_cliente(String nome_Produto) {
this.nome_Produto = nome_Produto;
}
public String getQuantidade() {
return Quantidade;
}
public void setQuantidade(String Quantidade) {
this.Quantidade = Quantidade;
}
}
e a minha bd:
Código:
package com.example.rafa.ganhemais;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.inputmethodservice.Keyboard;
import android.util.Log;
import java.util.ArrayList;
import java.util.List;
public class DBAdapter {
// colunas da tabela Produto
static final String ID_Produto = "id_Produto";
static final String NOME_Produto = "nome_Produto";
static final String Quantidade = "Quantidade";
static final String TAG = "DBAdapter";
// Database Version
static final int DATABASE_VERSION = 9;
// Database Name
static final String DATABASE_NAME = "GanheMais.db";
// Contacts table name
static final String TABELA_Produtos = "detalhes_Produtos";
static final String DATABASE_CREATE = "create table if not exists detalhes_clientes (id_Produto integer primary key autoincrement, "
+ "nome_Produto varchar(100) not null, Quantidade varchar(100) not null);";
final Context context;
DatabaseHelper DBHelper;
SQLiteDatabase db;
public DBAdapter(Context ctx)
{
this.context = ctx;
DBHelper = new DatabaseHelper(context);
}
private static class DatabaseHelper extends SQLiteOpenHelper
{
DatabaseHelper(Context context)
{
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
@Override
public void onCreate(SQLiteDatabase db)
{
try {
db.execSQL(DATABASE_CREATE);
} catch (SQLException e) {
e.printStackTrace();
}
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion)
{
Log.w(TAG, "Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS utilizadores");
onCreate(db);
}
}
//---opens the database---
public DBAdapter open() throws SQLException
{
db = DBHelper.getWritableDatabase();
return this;
}
//---closes the database---
public void close()
{
DBHelper.close();
}
//---insert a user into the database---
public long insertProduto(String Nome_Produto, String quantidade)
{
ContentValues initialValues = new ContentValues();
initialValues.put(NOME_Produto, Nome_Produto);
initialValues.put(Quantidade, quantidade);
return db.insert(TABELA_Produtos, null, initialValues);
}
//---deletes a particular user---
public boolean deleteProduto(long id_cliente)
{
return db.delete(TABELA_Produtos, ID_Produto + "=" + id_cliente, null) > 0;
}
//---retrieves all the users---
public Cursor getAllProdutos()
{
return db.query(TABELA_Produtos, new String[] {ID_Produto, NOME_Produto, Quantidade}, null, null, null, null, null);
}
//---retrieves a particular user---
public Cursor getProduto(long id_Produto) throws SQLException
{
Cursor mCursor =
db.query(true, TABELA_Produtos, new String[] {ID_Produto,
NOME_Produto, Quantidade}, ID_Produto + "=" + id_Produto, null,
null, null, null, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
//---updates a user---
public boolean updatProduto(long id_Produto, String nome_Produto, String Preco_Produto)
{
ContentValues args = new ContentValues();
args.put(ID_Produto, nome_Produto);
args.put(Quantidade, Preco_Produto);
return db.update(TABELA_Produtos, args, ID_Produto + "=" + id_Produto, null) > 0;
}
}