如何通过更改SQLite3中的现有SQL表通过单个SQL语句添加更多列?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过更改SQLite3中的现有SQL表通过单个SQL语句添加更多列?相关的知识,希望对你有一定的参考价值。
#include <stdio.h> /* needed for vsnprintf */
#include <stdlib.h> /* needed for malloc-free */
#include <string.h>
#include <sqlite3.h>
char *table[10] = { "John", "peter", "Nolan" };
int i ;
for(i=0; i<3; i++)
{
char *sql1 = "ALTER TABLE names ADD column '%s'",table[i];
rc = sqlite3_exec(db, sql1, callback, 0, &zErrMsg);
if (rc != SQLITE_OK )
{
printf("Error: %s:Unable to ALTER the table\n", zErrMsg);
}
}
- 在上面的代码中添加'3'列(例如John,Peter,Nolan),我将SQL语句重新运行了'3'次。
- 是否有可能通过单个SQL语句(或)提供任何其他API来添加'3'以上的列?
注意:我不想做以下事情
- Using a loop statement to add the columns.
- Executing many SQL statements to add the columns.
- Backup of the existing database and renaming it after adding the columns.
答案
不,您无法在1个单个sql语句中执行此操作,您可以在多行语句的一行中执行此操作。
以上是关于如何通过更改SQLite3中的现有SQL表通过单个SQL语句添加更多列?的主要内容,如果未能解决你的问题,请参考以下文章
根据表中另一个现有列的内容更改 SQL Server 中的现有列
使用 `executemany` 更新现有 SQLite3 数据库中的条目(使用 Python sqlite3)