テーブルを作成してから、新しい列を追加しようとしました。これはJavascriptによって実装されました(使用されるデータベースはwebsqlのSQLiteだと思います):
var FFFNames = ["DEFAULTY", "LAGACY", "MATADATA"];
db.transaction(function (tx){
tx.executeSql('CREATE TABLE IF NOT EXISTS ProjSetsT (ProjId unique)');
});
for (var i = 0; i < FFFNames.length; i++){
db.transaction(function (tx){
tx.executeSql('ALTER TABLE ProjSetsT ADD ? TINYINT(1)', FFFNames[i]);
});
}
まあそれはうまくいきませんでした。テーブルは作成されましたが、列は追加されていません。ALTERで疑問符は許可されていますか、それとも何か問題がありますか?
[9月20日に更新]:「ALTERTABLE tablename ADD COLUMN?datatype」などの別の構文を試しましたが、それでも機能しません。
私もこのようなコードを試しました:
db.transaction(function (tx){
tx.executeSql('ALTER TABLE ProjSetsT ADD COLUMN ? TINYINT(1)', "TEST");
});
警告はありませんが、機能しません。
私も試しました:
var AAA = "TEST";
db.transaction(function (tx){
tx.executeSql('ALTER TABLE ProjSetsT ADD COLUMN ? TINYINT(1)', AAA);
});
今回はエラーが発生しました:
キャッチされないエラー:TYPE_MISMATCH_ERR:DOM例外17