Enregistrement d'information dans la base de donné

Fermé
Scipion20 - Modifié le 27 oct. 2019 à 17:51
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 - 30 oct. 2019 à 11:26
Bonjour,

J'ai un problème d'enregistrement d'information dans la base de données, je n'ai pas d'erreur mais quand je regarde dans le fichier de la base de données je n'ai rien même pas la table.

Je travail avec android studio.

Voici le fichier ou je récupère les informations :
package com.example.mybenne;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class modifierInfoDestinataire extends AppCompatActivity {

    private DatabaseManager databaseManager;

    Button retour;
    Button enregistrer;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_modifier_info_destinataire);

        retour = findViewById(R.id.retour);
        enregistrer = findViewById(R.id.enregistrer);

        databaseManager = new DatabaseManager( this );

        retour.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                retour();
            }
        });

        enregistrer.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                EditText tonEdit = (EditText)findViewById(R.id.nom);
                String nom = tonEdit.getText().toString();

                EditText tonEdit2 = (EditText)findViewById(R.id.prenom);
                String prenom = tonEdit2.getText().toString();

                EditText tonEdit3 = (EditText)findViewById(R.id.telephone);
                String telephone = tonEdit3.getText().toString();

                databaseManager.insertUtilisateur(nom, prenom, telephone, "destinataire");
            }
        });

        databaseManager.close();

    }

    protected void retour()
    {
        Intent intent1 = new Intent();
        intent1.setClass(this, MainActivity.class);

        Intent intent2 = getIntent();
        if (intent2!= null)
        {
            Bundle extras2 = intent2.getExtras();
            if (extras2 != null)
            {
                intent1.putExtra("Nom", extras2.getString("Nom"));
            }
            startActivity(intent1);
        }
    }
}


Et le fichier ou je manipule la base de données :
package com.example.mybenne;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.util.Log;

public class DatabaseManager extends SQLiteOpenHelper {

    private static final String DATABASE_NAME = "Benne.db";
    private static final int DATABASE_VERSION = 1;

    public DatabaseManager( Context context) {
        super( context, DATABASE_NAME, null, DATABASE_VERSION);
    }

    @Override
    public void onCreate(SQLiteDatabase db){
        String strSql = "create table utilisateur ("
                + " id integer primary key,"
                + " nom varchar,"
                + " prenom varchar,"
                + " telephone varchar,"
                + " fonction varchar"
                + ")";

        db.execSQL( strSql );
        Log.i( "DATABASE", "onCreate invoked");
    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        String strSql = "drop table utilisateur";
        db.execSQL( strSql );
        this.onCreate( db );
        Log.i( "DATABASE", "onUpgrade invoked");
    }

    public void insertUtilisateur(String nom, String prenom, String telephone, String fonction) {
            nom = nom.replace( "'", "''");
            String strSql = "insert into utilisateur (nom, prenom, telephone, fonction) values ('"
                    + nom + "', "
                    + prenom + "', "
                    + telephone + "', "
                    + fonction + ")";
            this.getWritableDatabase().execSQL( strSql );
            Log.i( "DATABASE", "insertUser invoked");
    }
}

2 réponses

Chris 94 Messages postés 50978 Date d'inscription mardi 8 janvier 2008 Statut Modérateur Dernière intervention 17 février 2023 7 323
27 oct. 2019 à 17:49
Bonjour,

Merci pour cette information. As-tu une question ?

Pour rappel :
Les réponses sont données par des bénévoles, pas par des machines. Il est vivement recommandé d'user des formes minimales de la politesse ("bonjour', "s'il vous plait", "merci d'avance") pour rester dans le cadre de notre charte d'utilisation.

Pense à attribuer à ton code la couleur syntaxique et la forme correcte avec le bouton
<>
.
0
BunoCS Messages postés 15472 Date d'inscription lundi 11 juillet 2005 Statut Modérateur Dernière intervention 25 mars 2024 3 894
30 oct. 2019 à 11:26
0