2011-06-30 17 views
0

2つのテキストフィールドのユーザー名とパスワードと同じビューのボタンがあります。これらの2つのテキストボックスを入力し、データベースにデータを挿入するための送信ボタンをクリックしますsqliteデータベースでは、以下のLog catも貼り付けています。問題がどこにあるのか見てみましょう:データベースを挿入していないのはなぜですか?ありがとう。あなたがテキストとしてパスワードを格納する必要がレコードがデータベースsqliteに挿入されていません

public class MyContentProvider extends ContentProvider { 
public static final String USER_NAME = "USER_NAME"; 
public static final String PASSWORD = "PASSWORD"; 

private SQLiteDatabase sqlDB; 

public DatabaseHelper dbHelper; 

private static final String DATABASE_NAME = "Users.db"; 

private static final int DATABASE_VERSION = 1; 

private static final String TABLE_NAME = "User"; 

private static final String TAG = "MyContentProvider"; 

public static class DatabaseHelper extends SQLiteOpenHelper { 

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

ava:150) 
     06-30 12:22:49.622: ERROR/JavaBinder(235):  at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:140) 
    06-30 12:22:49.622: ERROR/JavaBinder(235):  at android.os.Binder.execTransact(Binder.java:287) 
     06-30 12:22:49.622: ERROR/JavaBinder(235):  at dalvik.system.NativeStart.run(Native Method) 
     06-30 12:22:55.271: DEBUG/dalvikvm(235): GC freed 542 objects/51288 bytes in 152ms 
+0

ありがとうアレックス尋問を改善するため.. – SRam

答えて

1

、「PASS」はsqliteのに存在しないので、テーブルを作成する際に、いくつかのエラーがある可能性があります。これを試してください:

db.execSQL("Create table " 
      + TABLE_NAME 
      + "(_id INTEGER PRIMARY KEY AUTOINCREMENT, USER_NAME TEXT,PASSWORD TEXT);"); 

パスワードを読みやすい形式で保存したくない場合は、最初に暗号化する必要があります。

+0

こんにちはセザール同じエラー)( – SRam

+0

エラーはこのようなものSQLDB = dbHelper.getWritableDatabaseに来て、それを修正した後に来ています。 \t \t //ユーザー表にレコードを挿入し、最近挿入されたレコードの行番号を取得します。 \t \t long rowId = sqlDB.insert(TABLE_NAME、 ""、contentvalues); \t \t(ROWID> 0)であれば{ \t \t \tウリrowUri = ContentUris.appendId( \t \t \t \t \t MyUsers.User.CONTENT_URI.buildUpon()、ROWID).build(); \t \t \t getContext()。getContentResolver()。notifyChange(rowUri、null); \t \t \t return rowUri; \t \t \t \t throw SQLException( "+ uriに行を挿入できませんでした)。 – SRam

1

ContentProvidesの章はLearning Android (O'Reilly)にあります。そこにあなたが知る必要があるすべてを学ぶことができます。

  • 書き込み後にデータベースを閉じる必要があります。
関連する問題