Error al leer de la base de datos

Error al leer de la base de datos

de Alejandro Gonzalez -
Número de respuestas: 8

Buenas tardes, mi problema es que intento acceder a mi pagina de moodle y al darle en Área personal me sale este error.Error al leer de la base de datos. Me podrian ayudar??

Promedio de valoraciones: -
En respuesta a Alejandro Gonzalez

Re: Error al leer de la base de datos

de Jose Maria Blanquer -

Buenas, la instalación fue correctamente?

Si tienes acceso, lo mejor seria que echaras un vistazo al archivo de logs de php, a ver si eso ayuda a resolver el problema. O si puedes, activa el modo debug al máximo(en Moodle) buscando en la caja de búsqueda(como administrador) depuración o debugging y seleccionando del desplegable la ultima opción, ahí arrojara el error en la consulta.

Si no te aclaras, postealo y le echare un vistazo para poder ayudarte, un saludo

En respuesta a Jose Maria Blanquer

Re: Error al leer de la base de datos

de Alejandro Gonzalez -

Hola buenos dias, busque la depuración y me salio esto.

line 1478 of \lib\dml\moodle_database.php: call to moodle_database->get_record_select()line 559 of \lib\datalib.php: call to moodle_database->get_record()line 742 of \lib\setup.php: call to get_site()line 26 of \config.php: call to require_once()line 3 of \admin\settings.php: call to require_once()
En respuesta a Jose Maria Blanquer

Re: Error al leer de la base de datos

de Alejandro Gonzalez -

Debug info: Table 'moodle.mdl_forum_posts' doesn't exist
SELECT p.id,p.subject,p.modified,p.discussion,p.userid, d.name, d.timemodified, d.usermodified, d.groupid, d.timestart, d.timeend, d.pinned, u.firstnamephonetic,u.lastnamephonetic,u.middlename,u.alternatename,u.firstname,u.lastname,
u.email, u.picture, u.imagealt
FROM mdl_forum_discussions d
JOIN mdl_forum_posts p ON p.discussion = d.id
JOIN mdl_user u ON p.userid = u.id

WHERE d.forum = ? AND p.parent = 0

ORDER BY CASE WHEN p.modified < d.timestart
THEN d.timestart
ELSE p.modified
END DESC, d.id DESC LIMIT 0, 3
[array (
0 => '1',
)]
Error code: dmlreadexception
Stack trace:
  • line 474 of \lib\dml\moodle_database.php: dml_read_exception thrown
  • line 1088 of \lib\dml\mysqli_native_moodle_database.php: call to moodle_database->query_end()
  • line 2654 of \mod\forum\lib.php: call to mysqli_native_moodle_database->get_records_sql()
  • line 99 of \blocks\news_items\block_news_items.php: call to forum_get_discussions()
  • line 288 of \blocks\moodleblock.class.php: call to block_news_items->get_content()
  • line 230 of \blocks\moodleblock.class.php: call to block_base->formatted_contents()
  • line 1181 of \lib\blocklib.php: call to block_base->get_content_for_output()
  • line 1233 of \lib\blocklib.php: call to block_manager->create_block_contents()
  • line 538 of \lib\outputrenderers.php: call to block_manager->ensure_content_created()
  • line 39 of \theme\bootstrapbase\renderers\core_renderer.php: call to core_renderer->standard_head_html()
  • line 50 of \theme\roshnilite\layout\columns3.php: call to theme_bootstrapbase_core_renderer->standard_head_html()
  • line 1110 of \lib\outputrenderers.php: call to include()
  • line 1040 of \lib\outputrenderers.php: call to core_renderer->render_page_layout()
  • line 164 of \my\index.php: call to core_renderer->header()

En respuesta a Alejandro Gonzalez

Re: Error al leer de la base de datos

de Jose Maria Blanquer -

Hola el error se ve claro.. falta una tabla en la base de datos, exactamente falta mdl_forum_posts, has hecho alguna migración o eliminado tablas de la base de datos? 

Comprueba que esa tabla existe en tu base de datos y me escribes la respuesta

Un saludo

En respuesta a Jose Maria Blanquer

Re: Error al leer de la base de datos

de Alejandro Gonzalez -

Hola, cuando ejecuto la consulta dice que mdl_forum_posts me dice que no existe, no se si crearla de nuevo, si se puede crear?

hay una formar de ver si borraron alguna tabla??

Es que no soy el unico que tiene acceso.


En respuesta a Alejandro Gonzalez

Re: Error al leer de la base de datos

de Jose Maria Blanquer -

Tiene mala pinta...  Esa tabla debe esta... Una pregunta, a ver si podemos arreglar un poco el asunto..

¿Teneis en vuestra plataforma muchos foros creados? Si es asi, temo decirte que los habreis perdido..

Si no teneis ninguno, puedes probar a ejecutar esta consulta, e intentar acceder al área personal(una vez se haya ejecutado correctamente)


CREATE TABLE `mdl_forum_posts` (
  `id` bigint(10) NOT NULL AUTO_INCREMENT,
  `discussion` bigint(10) NOT NULL DEFAULT '0',
  `parent` bigint(10) NOT NULL DEFAULT '0',
  `userid` bigint(10) NOT NULL DEFAULT '0',
  `created` bigint(10) NOT NULL DEFAULT '0',
  `modified` bigint(10) NOT NULL DEFAULT '0',
  `mailed` tinyint(2) NOT NULL DEFAULT '0',
  `subject` varchar(255) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  `message` longtext COLLATE utf8_unicode_ci NOT NULL,
  `messageformat` tinyint(2) NOT NULL DEFAULT '0',
  `messagetrust` tinyint(2) NOT NULL DEFAULT '0',
  `attachment` varchar(100) COLLATE utf8_unicode_ci NOT NULL DEFAULT '',
  `totalscore` smallint(4) NOT NULL DEFAULT '0',
  `mailnow` bigint(10) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  KEY `mdl_forupost_use_ix` (`userid`),
  KEY `mdl_forupost_cre_ix` (`created`),
  KEY `mdl_forupost_mai_ix` (`mailed`),
  KEY `mdl_forupost_dis_ix` (`discussion`),
  KEY `mdl_forupost_par_ix` (`parent`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci COMMENT='All posts are stored in this table';
En respuesta a Jose Maria Blanquer

Re: Error al leer de la base de datos

de Alejandro Gonzalez -

Muchisimas gracias, aplique la sentencia y me funciono a la perfección, gracias por todo son de mucha ayuda en esta comunidad, se lo agradezco josé Maria por ayduarme.