SQLite:如何向数据库中的所有表添加列?

时间:2017-06-27 08:35:39

标签: sql sqlite alter-table

我对SQLite(SQL整体)很陌生。我创建了一个数据库,并在其中创建了多个表,突然意识到我忘了为它们添加一个列。现在我有280个表没有列的不同名称。我尝试添加*并与SELECT结合,但它给出了一个错误。我怎么能完成它?

我的代码:

ALTER TABLE "MYBUS.*" ADD COLUMN STOPID int null;

2 个答案:

答案 0 :(得分:2)

3小时后问题终于解决了。 搜索了一段时间后,我偶然发现了这个答案 SQlite alter table with result from select statement

我运行了代码:select 'alter table '||tbl_name||' add STOPID int null' from sqlite_master

它返回了所有需要的所有280个SQL查询但带有引号,因此我从this.lau获取了线索并创建了一个python正则表达式脚本并运行它。像魅力一样工作,在10行代码中,我能够为所有280个表添加一列。

答案 1 :(得分:-1)

请参阅此链接https://dba.stackexchange.com/questions/160145/add-columns-to-all-tables-in-a-database-if-the-columns-dont-exist

即使它适用于SQL Server,这也可以帮助您入门。

确保在将列名添加到表之前检查列名。