查看已知数据库?

uplii1fm  于 2021-06-18  发布在  Mysql
关注(0)|答案(1)|浏览(350)

我有一个已知数据库名称的列表,我想应用相同的sql命令。
简单到:
使用我的数据库;插入表(列)值('值');
我想使用for循环或某种类型来替换“使用我的\数据库”部分。
我在google上搜索过,但大多数答案都是关于“遍历所有数据库”,而不是已知数据库的一部分。
请告知。

x8diyxa7

x8diyxa71#

你其实不需要使用 use database 命令与特定架构交互。可以在插入查询中为表名添加前缀: insert into schema_name.table_name (col) values ('value'); 将产生相同的最终结果。
如果您只处理mysql,那么您正在尝试的操作可能会有点麻烦,尽管您可以使用存储过程循环处理所有所需的模式/表组合(尽管如果这只是一次操作,可能会有点过火)
如果您是从具有写权限的应用程序与mysql交互,则可以:
使用架构名称生成和数组
具体细节取决于语言,但例如使用php,您可以执行以下操作: $schemas = array('schema_one', 'schema_two', 'schema_three'); 遍历架构数组
同样,在php中,您可以使用 foreach 例如:

foreach($schemas as $s)
{
    $stmt = "insert into ".$s.".table_name (col) values('".$value."')";
    // Here, you'd actually run $stmt against MySQL to run the insert. 
}

这是一个非常粗略的例子,我使用php是因为我花了99%的时间编写代码,但你可以使用任何其他编程语言来实现同样的事情

相关问题