답변:
아니요, 한 번에 하나씩 추가해야합니다. SQLite의 ALTER TABLE 설명서 상단에있는 구문 다이어그램을 참조하십시오 .
ADD
분기에 루프가 없으므로 반복이 허용되지 않습니다.
@mu의 답변이 너무 짧습니다 '가 맞습니다. 또한 SQL 트랜잭션의 이점을 사용하여 여러 열을 추가하기위한 최적화 된 해결 방법을 추가합니다.
String alterTableQuery = "ALTER TABLE " + TABLE_NAME + " ADD COLUMN ";
List<String> newColumns = ..// Your new columns
db.beginTransaction();
for (String column : newColumns){
db.execSQL(alterTableQuery + column + " VARCHAR");
}
db.setTransactionSuccessful();
db.endTransaction();
이것이 누군가를 도울 수 있기를 바랍니다.
내가 사용할 수있는 유일한 것은
BEGIN TRANSACTION;
ALTER TABLE tblName ADD ColumnNameA TEXT DEFAULT '';
ALTER TABLE tblName ADD ColumnNameB TEXT DEFAULT '';
ALTER TABLE tblName ADD ColumnNameC TEXT DEFAULT '';
COMMIT
;가 있습니다. 쿼리를 여러 줄로 읽도록하기 위해
그런 다음이 쿼리를 실행하고 실행시 여러 열을 추가합니다 ... 한 줄이 아니라 하나의 쿼리에서 가능합니다.