如何使用PHP查找上一条SQL语句中创建的所有表的名称?
我有如下代码:如何使用PHP查找上一条SQL语句中创建的所有表的名称?,php,mysql,sql,create-table,Php,Mysql,Sql,Create Table,我有如下代码: $import = "CREATE TABLE foo..."; // an SQL import containing some CREATE TABLE, ALTER TABLE, etc. $result = $mysqli->query($import) or die ($mysqli->error); 如何查找上次SQL查询中创建的所有表的名称(即$import语句)?我想知道MySQL中是否有一种特殊的方法来实现这一点,而不仅仅是在语句中搜索CREATE
$import = "CREATE TABLE foo..."; // an SQL import containing some CREATE TABLE, ALTER TABLE, etc.
$result = $mysqli->query($import) or die ($mysqli->error);
如何查找上次SQL查询中创建的所有表的名称(即
$import
语句)?我想知道MySQL中是否有一种特殊的方法来实现这一点,而不仅仅是在语句中搜索CREATE TABLE
,这是一种肮脏的攻击。使用信息模式。TABLES
$time = time();
//create tables here
...
select table_name, create_time
from information_schema.TABLES
where create_time > $time
where table_schema = 'andomar'
order by CREATE_TIME desc
不知道还有没有别的办法。尝试获取查询前后的表列表并进行比较。@bansi-Hmm是的,我在想可能会有类似于
insert\u-id
,但对于表。。。我想我对这个问题有点过于乐观了。如果你写这个查询,你应该know@Dagon为了参数起见,我在这里只是显示一个静态查询,但实际上它来自一个SQL导入文件,本质上是非常动态的。丑陋的正则表达式?where table_schema='andomar'
为什么有这个部分,并把它命名为数据库名称哦,你命名了这个名称,我已经被这个问题弄糊涂了,他问这个问题的方式,我想这个答案是+1