まず第一に、私は他の解決策を試みましたが、私にとってはうまくいかなかったのです。 これは私がテーブルを作成する方法である:テーブル(テーブル名)にはカラム名(カラム名)はありません
String CREATE_DETAILS_TABLE = "CREATE TABLE " + TABLE_DETAIL + "("
+ STATUS + " TEXT," + FIRST_NAME + " TEXT," + LAST_NAME + " TEXT," + EMAIL + " TEXT," + COUNTRY
+ " TEXT," + COUNTRYALPHA2 + " TEXT," + CITY + " TEXT," + ZIP + " TEXT," + ADDRESS
+ " TEXT," + USERACCSTATUS + " TEXT," + SKYPENAME + " TEXT," + COUNTRY_NAME + " TEXT," +
PHONE_CODE + " TEXT," + PHONE + " TEXT," + DEVICEID + " TEXT," + STATUSDESC + " TEXT" + ")";
db.execSQL(CREATE_DETAILS_TABLE);
列と名前:テーブルに詳細を追加
private static final String TABLE_DETAIL = "detail";
// Details table columns
private static final String STATUS = "Status";
private static final String FIRST_NAME = "FirstName";
private static final String LAST_NAME = "LastName";
private static final String EMAIL = "Email";
private static final String COUNTRY= "Country";
private static final String COUNTRYALPHA2= "CountryAlpha2";
private static final String CITY= "City";
private static final String ZIP = "Zip";
private static final String ADDRESS = "Address";
private static final String USERACCSTATUS = "UserAccStatus";
private static final String SKYPENAME = "SkypeName";
private static final String COUNTRY_NAME = "CountryName";
private static final String PHONE_CODE = "Phonecode";
private static final String PHONE = "Phone";
private static final String DEVICEID = "DeviceIdentificator";
private static final String STATUSDESC = "StatusDescription";
:
public void addDetails(String status,String firstName,String lastName,String email
,String country,String countryAlpha2,String city,String zip,String address,String userAccStatus
,String skypename,String phonecode,String phone,String countryname,String deviceid,String statusDesc){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(STATUS,status);
contentValues.put(FIRST_NAME,firstName);
contentValues.put(LAST_NAME,lastName);
contentValues.put(EMAIL,email);
contentValues.put(COUNTRY,country);
contentValues.put(COUNTRYALPHA2,countryAlpha2);
contentValues.put(CITY,city);
contentValues.put(ZIP,zip);
contentValues.put(ADDRESS,address);
contentValues.put(USERACCSTATUS,userAccStatus);
contentValues.put(SKYPENAME,skypename);
contentValues.put(PHONE_CODE,phonecode);
contentValues.put(PHONE,phone);
contentValues.put(COUNTRY_NAME,countryname);
contentValues.put(DEVICEID,deviceid);
contentValues.put(STATUSDESC,statusDesc);
long id = db.insert(TABLE_DETAIL,null,contentValues);
db.close();
Log.d(TAG,"User Details added into sqlite: " + id);
}
とするとき、それは私にこのエラーが発生します詳細を追加しようとしています:
android.database.sqlite.SQLiteException:テーブル詳細にStatusDescription(code 1)という名前の列がありません :コンパイル中にINSERT INTO 詳細(ステータス、郵便番号、電子メール、アドレス、UserAccStatus、国名、名、都市、SkypeName、電話番号、StatusDescription、Phonecode、Country、LastName、CountryAlpha2、DeviceIdentificator) VALUES(?、?、?、?、?、?、?、?、?、?)
私はこのすべてに新しいので、誰かが私が問題の原因を見つけるのを助けることができたら、それは素晴らしいだろう!
エラーはかなりわかりやすいです。あなたが照会しているテーブル内にそのような列がないか、間違ったテーブルを照会しています。 –
@Aominèは、私が間違っていることを私は見ません。 –
あなたは照会しているテーブルのテーブル列のスクリーンショットを表示できますか? –