Php 在另一个表的列中插入表名
我知道这个问题以前已经被回答过了,但很抱歉我不是一个程序员,所以我不知道该怎么做 我有一个100多个测验的列表,所有测验都在单独的表格中(id、问题、答案)。现在,我想做的是将所有表的名称插入到名为“quick”的表的列(quizname)中,这是所有测验的主索引 接下来,我还要将每个表中的问题和答案插入包含所有问题和答案(结构:id、quizid、question、answer)的主表中 我正试图开发一个测验网站,但我必须自己做。说来话长。如果我能从Stack Overflow社区得到一些帮助,那就太好了 我知道我是一个无赖,所以会有咆哮,责骂…等等。。。来自经验丰富的程序员,但我只需要做到这一点Php 在另一个表的列中插入表名,php,mysql,Php,Mysql,我知道这个问题以前已经被回答过了,但很抱歉我不是一个程序员,所以我不知道该怎么做 我有一个100多个测验的列表,所有测验都在单独的表格中(id、问题、答案)。现在,我想做的是将所有表的名称插入到名为“quick”的表的列(quizname)中,这是所有测验的主索引 接下来,我还要将每个表中的问题和答案插入包含所有问题和答案(结构:id、quizid、question、answer)的主表中 我正试图开发一个测验网站,但我必须自己做。说来话长。如果我能从Stack Overflow社区得到一些帮助
谢谢您可以使用命令获取当前数据库中的表名列表
SHOW TABLES;
或者,您可以查询信息\u架构
表,例如:
SELECT table_name FROM information_schema WHERE table_schema = 'your-database-name';
要创建具有表名的表,请使用如下查询:
CREATE TABLE quiz AS SELECT table_name AS quizname FROM information_schema.tables WHERE table_schema = 'test';
然而,有趣的是,这将包括新创建的表“测验”
我想不出一种方法可以完全在MySQL中完成最后一部分,您必须编写一个PHP脚本来读取quick
表,然后执行许多类似以下的查询:
INSERT INTO master_table(quizid, question, answer) SELECT 'quiz1', question, answer FROM quiz1
INSERT INTO master_table(quizid, question, answer) SELECT 'quiz2', question, answer FROM quiz2
...
任何代码都会有帮助,但看起来您需要在mysql中使用JOIN来连接来自2个表的类似特性。非常感谢,Jakob。我会试试看。让我看看!我尝试使用“创建表测验…”,但表名没有插入到新表中。