2012-04-09 11 views
-1

アプリケーションを実行してデータベースに何らかの情報を入力しようとすると、何も起きず、エラーメッセージが表示されます。 LogCatに表示されます。 完全なエラーメッセージは次のとおりです。0x2d7a30のエラー1( "NULLenergy_rates"の近く:構文エラー)

「04-09 17:22:18.208:E /データベース(484):失敗1(近い ":「TABLEのApplianceDetailsをCREATE準備0x2d7a30上(_idのINTEGER構文エラーNULLenergy_rates") 。私はこのエラーを修正する方法上の任意のヘルプはいただければ幸い

public class Database { 

public static final String KEY_ROWID = "_id"; 
public static final String KEY_NAME = "appliance_name"; 
public static final String KEY_WATTAGE = "appliance_wattage"; 
public static final String KEY_ENERGY = "energy_rates"; 

private static final String DATABASE_NAME = "TheApplianceKeeperdb"; 
private static final String DATABASE_TABLE = "ApplianceDetails"; 
private static final int DATABASE_VERSION = 1; 

private DbHelper ourHelper; 
private final Context ourContext; 
private SQLiteDatabase ourDatabase; 

private static class DbHelper extends SQLiteOpenHelper{ 

    public DbHelper(Context context) { 
     super(context, DATABASE_NAME, null, DATABASE_VERSION); 
     // TODO Auto-generated constructor stub 
    } 

    @Override 
    public void onCreate(SQLiteDatabase db) { 
     // TODO Auto-generated method stub 
     db.execSQL("CREATE TABLE " + DATABASE_TABLE + " (" + 
       KEY_ROWID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + 
       KEY_NAME + " TEXT NOT NULL, " + 
       KEY_WATTAGE + " TEXT NOT NULL" + 
       KEY_ENERGY + " TEXT NOT NULL);"         
     );  
    } 

:; PRIMARY KEY、appliance_name TEXT NOT NULLで、appliance_wattageテキストではないNULLenergy_ratesのTEXT NOT NULL)」

は、このコードに関連付けられています

+0

KEY_WATTAGE + " TEXT NOT NULL" +を変更コンマとスペースは( 'System.out.println'を使用して)完全なクエリ文字列を印刷し、あなたはすぐにエラーを発見します。 –

+1

エラーmsgと同様に、KEY_ENERGYの前にスペースがありません。 –

答えて

1

KEY_WATTAGE + " TEXT NOT NULL, " +

+0

私はちょっとばかばかしいと感じましたが、それは明らかなことでしたが、ありがとうございました!それは今働いている! – Sketzii

+0

これは正解とマークする場合にのみ問題ありません。 :) – Sam

関連する問題