首页 > 代码库 > 记录一个直接操作mediawiki数据库遇到的坑

记录一个直接操作mediawiki数据库遇到的坑

我的mediawiki使用的是postgresql数据库,当你进入到mediawiki数据库时,运行sql

select * from pg_tables;

你会发现mediawiki的数据表的schemaname为mediawiki,但是平时我们创建的表的schemaname是public,,

所以这时你直接运行 select * from table_name; 时,你会发现查不到任何信息,显示没有这个数据表的存在,

解决方法:select * from mediawiki.table_name; 也就是你需要在表名之前加上schemaname。。查了一下,发现大神是这样解释postgresql的schemaname的:

schema概念有点像命名空间或者把它想像成一个文件系统中的目录,差别就是这个schema下不能再有schema嵌套.
各个对象比如表,函数等存放在各个schema下,同一个schema下不能有重复的对象名字,但在不同schema下可以重复.

 

等等等等。。。了,

记录一个直接操作mediawiki数据库遇到的坑