0

エラーは、「テーブルの作成オプション...テーブルスコアの作成...」を準備するときに(「作成」の近く:構文エラー)のようになります。プログラムに他のすべてのコードを投稿するだけで、さらに問題が発生したときに尋ねることができます。 。

これは私のテーブルです(DBHelper.java内):

final static String sqlcreate=

        "create table option (id integer primary key autoincrement," + 
        "volume boolean not null, vibrate boolean not null, theme text not null) " +    

        "create table score (id integer primary key autoincrement," +
        "score text not null, difficulty text not null, date date not null, );";

これは私のDBFunction.javaです。

public int addScore(String score, String difficulty){

ContentValues values = new ContentValues();

    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); 
    Date scoredate = new Date();    
    values.put("score", score);
    values.put("difficulty", difficulty);
    values.put("date", dateFormat.format(scoredate));   
    return (int) db.insert(tableScore, null, values);
}`

そしてこれは私のOnClick()です:

if (v==btnadd){

        String vol = tbtnvol.getText().toString();
        String vib = tbtnvib.getText().toString();
        String theme = themename.getText().toString();
        options.open();
        options.addOption(vol, vib, theme);
        options.close();
        Toast.makeText(this, "Data has been added", Toast.LENGTH_LONG).show();
    }`
4

4 に答える 4

1

以下のようにクエリを修正します。

"create table option (id integer primary key autoincrement," + 
"volume boolean not null, vibrate boolean not null, theme text not null); " +

"create table score (id integer primary key autoincrement," +
"score text not null, difficulty text not null, date date not null);";

セミコロンが抜けていて、クエリに余分なコンマが残っています

于 2012-04-06T17:59:57.640 に答える
0

エラーのない最初のクエリ

create table option (id integer primary key autoincrement,volume boolean not null, vibrate boolean not null, theme text not null)

2番目のクエリ

create table score (id integer primary key autoincrement," +

「スコアテキストがnullでない、難易度テキストがnullでない、日付日付がnullでない)

私は今それをチェックしましたそれはうまくいく

于 2012-04-06T18:00:46.930 に答える
0

を削除し、最後から

"create table score (id integer primary key autoincrement," +
    "score text not null, difficulty text not null, date date not null, );";

次のように書く

"create table score (id integer primary key autoincrement," +
    "score text not null, difficulty text not null, date date not null);";

うん、そしてまた置く; グラハムが言ったように最後に

于 2012-04-06T18:01:02.243 に答える
0

そこにある2つのSQLステートメントをセミコロンで区切る必要があります。

... theme text not null); " +   <-- semi colon added here
"create table score ...
于 2012-04-06T17:58:24.927 に答える