[英]How to DROP multiple columns with a single ALTER TABLE statement in SQL Server?
[英]sqlite alter table add MULTIPLE columns in a single statement
是否可以在 sqlite 的单个语句中更改表添加 MULTIPLE 列? 以下是行不通的。
alter table test add column mycolumn1 text, add column mycolumn2 text;
不,您必须一次添加一个。 请参阅SQLite 的 ALTER TABLE 文档顶部的语法图:
ADD
分支中没有循环,因此不允许重复。
到目前为止,我唯一可能使用的是
BEGIN TRANSACTION;
ALTER TABLE tblName ADD ColumnNameA TEXT DEFAULT '';
ALTER TABLE tblName ADD ColumnNameB TEXT DEFAULT '';
ALTER TABLE tblName ADD ColumnNameC TEXT DEFAULT '';
COMMIT
注意有; 故意使查询被读取为多行。
然后我运行这个查询并在运行时添加多个列......所以不是不是在一行中,而是在一个查询中是可能的。
@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();
我希望这会对某人有所帮助。
更改表测试添加列 mycolumn1 文本; 更改表测试添加列 mycolumn2 文本;
使用上面重新定义的查询
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.