Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sqlite专家-更新了具有相同列的多个表_Sqlite - Fatal编程技术网

Sqlite专家-更新了具有相同列的多个表

Sqlite专家-更新了具有相同列的多个表,sqlite,Sqlite,首先,我想说的是,我对数据库相当陌生,谢谢你帮助一位新手 对于我和一个朋友正在进行的一个应用程序项目,我将一个数据库与多个表放在一起,这些表共享一些相同的列名,例如表名为S18和列名触发器。我需要将trigger列中的文本从SOUR 1更改为1,但我有几个表,而不是一次更新每个表。有什么方法可以让我一次处理所有的事情吗?还是我注定要一次只做一张桌子 再次感谢我认为这取决于您可以使用哪些工具。我相当肯定,没有一种方法可以在不提及表名的情况下更新具有相同名称的所有列。但是,如果您可以使用C或其他编程

首先,我想说的是,我对数据库相当陌生,谢谢你帮助一位新手

对于我和一个朋友正在进行的一个应用程序项目,我将一个数据库与多个表放在一起,这些表共享一些相同的列名,例如表名为S18和列名触发器。我需要将trigger列中的文本从SOUR 1更改为1,但我有几个表,而不是一次更新每个表。有什么方法可以让我一次处理所有的事情吗?还是我注定要一次只做一张桌子


再次感谢

我认为这取决于您可以使用哪些工具。我相当肯定,没有一种方法可以在不提及表名的情况下更新具有相同名称的所有列。但是,如果您可以使用C或其他编程语言,您可以找到一种以编程方式实现这一点的方法

您可以使用以下语句获取所有表的列表:

select name from sqlite_master where type = 'table' and name not like 'sqlite_%'
sqlite_master是一个存储数据库信息的表。任何以sqlite开头的表都是系统表,所以您可能不想弄乱它们

然后,您可以通过执行以下命令,在该列表中循环获取所有列名:

PRAGMA table_info('tableName')
在遍历表和列时,可以存储这些表名和列名。然后就是在数据中搜索要更新的特定列名


也就是说,如果你认为值得花时间,这将取决于你。

是的,因此我需要参考每个表,最后我编写了一个查找/替换命令,并为每个表更改了表。。真希望有更好的办法,但没花太长时间