我有程序MY_OWN_PROC,参数为_DATE,_ID,其正文为:
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" rel="stylesheet"/>
<div class="container-fluid">
<div class="row flexbox-wrap">
<div class="col-lg-4 flexbox-equalise">
<article class="media card card-1">
<div class="row">
<div class="col-xs-12 col-sm-12 col-lg-12">
<div class="card-body align-self-left">
<h4 class="list-group-item-headline boxFixDw">LATEST RESOURCES</h4>
<p class="list-group-item-text">More added each week.</p>
<a href="X" class="button product_type_subscription add_to_cart_button ajax_add_to_cart">VIEW NOW</a>
</div>
</div>
</div>
</article>
</div>
<div class="col-lg-4 flexbox-equalise">
<article class="media card card-1">
<div class="row">
<div class="col-xs-12 col-sm-12 col-lg-12">
<div class="card-body card-body-left">
<h4 class="list-group-item-headline boxFixDw">JOIN NOW</h4>
<p class="list-group-item-text">For instant access.</p>
<a href="#" data-toggle="modal" data-target="#modalJoin" class="button product_type_subscription add_to_cart_button ajax_add_to_cart">SIGN UP</a>
</div>
</div>
</div>
</article>
</div>
<div class="col-lg-4 flexbox-equalise">
<article class="media card card-1">
<div class="row">
<div class="col-xs-12 col-sm-12 col-lg-12">
<div class="card-body card-body-left">
<h4 class="list-group-item-headline boxFixDw">SAMPLE RESOURCES</h4>
<p class="list-group-item-text">Check the quality.</p>
<a href="X/" class="button product_type_subscription add_to_cart_button ajax_add_to_cart">VIEW NOW</a>
</div>
</div>
</div>
</article>
</div>
</div>
</div>
我在数据库db1 - db100中有相同的过程。现在我想立即更新所有数据库中的过程体(例如,我想要替换“h.DATE&lt; _DATE”部分或整个体)。如何通过本机sql命令或者adminer(我在服务器上使用adminer)或者php脚本使用mysql来完成?
更新:首先我的想法 - 我将为100个数据库制作sql命令(复制/粘贴)并将这个巨大的命令复制到adminer并运行它。
答案 0 :(得分:0)
如果您的数据库用户可以访问所有数据库,则可以创建PHP for循环
$conn = new mysqli ( '172.17.0.3', 'root', 'root', 'test');
for ( $i = 1; $i < 101; $i++ ) {
if ($conn->query("CREATE DEFINER=`root`@`%` PROCEDURE `db$i`.`MY_OWN_PROC`(IN `_DATE` INT)
NO SQL
SELECT h.*
FROM `my` h
WHERE
h.DATE>=_DATE") === false ) {
echo "error:".$conn->error;
}
}
这里的主要内容是db$i
。MY_OWN_PROC
位,它将增量放入数据库名称。
您当然必须将正确的程序源放入代码和正确的数据库凭据中。