时间:2021-07-01 10:21:17 帮助过:3人阅读
select * from information_schema.columns where COLUMN_NAME='eng-chi-dictionary';
COLUMN_NAME应该是book_name
book_name的值是eng-chi-dictionary,我现在是知道有个book_name叫做eng-chi-dictionary,请问如何找到schema_name table_name
eng-chi-dictionary 是字段值吧
select * from information_schema.columns where COLUMN_NAME='book_name';
select * from information_schema.columns where COLUMN_NAME='book_name';
这个确实可以,但是就是不能一次性定位,因为当库和表比较多时,可能有很多表中列的COLUMN_NAME为book_name
现在就是找一次性定位的语句。
一次性定位的语句!
虽然我们没有那么高的水平,不能说一定没有
但是象 phpmyadmin 这样的专业团队在实现“搜索”功能时,也是用 php 循环来完成的。
可见没有这样的语句是“真的”
见 db_search.php 文件
不懂你的’一次性定位‘是指什么?
因为当库和表比较多时,可能有很多表中列的COLUMN_NAME为book_name
请注意看返回的列,不是有库名和表名。这还不够清楚吗
我的意思是只找出eng-chi-dictionary是在哪个库的那个表下面的book_name的值。
select * from information_schema.columns where COLUMN_NAME='book_name';
这个应该是找出所有列名为book_name的。但是我还是无法确定eng-chi-dictionary是在哪里?
select * from information_schema.columns where COLUMN_NAME='book_name';
可以得到所有有字段 book_name 的表
其中:
TABLE_SCHEMA 为隶属的库
TABLE_NAME 为表名
你需要遍历这个查询结果,逐个表查找 book_name 是否含有 eng-chi-dictionary