在Wordpress中与自定义数据库表进行交互

时间:2012-12-07 00:14:54

标签: mysql database wordpress

我有一个自定义wordpress表(my_table)。我正在插入,更新所有好东西给它。当我尝试使用

$wpdb->get_results("SELECT * FROM $wpdb->my_table",ARRAY_A); 

$wpdb->get_results("SELECT * FROM my_table",ARRAY_A); 

我收到此错误

WordPress database error: [Table 'mydatabase.my_table' doesn't exist]
SELECT * FROM my_table

我也尝试将my_table添加到wp-db.php,但我仍然收到此错误。

  1. 是表格在数据库中
  2. 表格中有数据
  3. 他们的配置选项需要更改还是我需要添加表名的其他地方?我出于某种原因无法找到它。

    完整错误

    WordPress database error Table 'mydatabase.mytable' doesn't exist for query SELECT * FROM mytable made by do_action, call_user_func_array, promos
    

2 个答案:

答案 0 :(得分:1)

好的tiggles,如果你仍然被卡住,这就是我在你的情况下会做的事情。创建一个新表,但这一次,通过执行WordPress的SQL命令,使用类似:

$wpdb->query('CREATE TABLE mynewtable (First_Name char(50), Last_Name char(50), ... etc.)');

立即检查您是否可以查询它。如果是,则转到数据库并将mytable中的所有数据转储到此新创建的表中。请改用这个。

如果它是用户权限,因为创建上一个表的用户与授予WordPress访问权限的用户不同,那么您将是安全的。

答案 1 :(得分:0)

如果您的表my_table确实位于mydatabase数据库中,而mydatabase确实是WordPress的数据库,则没有理由说它不起作用。如果mydatabase不是WordPress数据库,或者my_table在另一个数据库中,那么它不起作用是正常的。