THE ORB
Arrancando el studio

Columna desconocida 'x' en 'field list'

Un script busca información que la base de datos no tiene, casi siempre porque su archivo de instalación nunca se importó.

groupsEsa función deja de andarpersonPodés arreglarlo

Haz esto primero

Busca el archivo .sql que venía con ese script e impórtalo en tu base de datos.

bug_reportMejor pega tu consola entera

Qué significa

La consulta es SQL válido pero nombra una columna (o una tabla) que la base de datos no tiene. El esquema y el código no están de acuerdo.

Qué lo provoca

Ordenado por la frecuencia con la que es la respuesta.

  1. 1

    El SQL del recurso nunca se importó

    Cada script que guarda datos trae un archivo .sql. Saltárselo es la causa habitual, sobre todo con un script instalado con prisa.

  2. 2

    El script espera el esquema de otro framework

    ESX usa users/identifier, QBCore usa players/citizenid. Un script escrito para uno, corriendo contra el otro, pide columnas que no existen.

  3. 3

    Una diferencia de versión del framework

    ESX Legacy movió varias columnas; QBCore renombró algunas entre versiones. La columna existe en la versión para la que se escribió el script, no en la tuya.

  4. 4

    Una errata, o las mayúsculas mal

    En MySQL sobre Linux los nombres de columna distinguen mayúsculas según la configuración.

  5. 5

    «Table doesn't exist»

    El mismo problema un nivel más arriba: el .sql no se importó en absoluto, o se importó en una base distinta de la que dice la cadena de conexión.

Cómo saber cuál es el tuyo

SHOW COLUMNS FROM users;

Compará con lo que pide la consulta. Si la que falta es la tabla, mirá a qué base de datos estás conectado de verdad:

SELECT DATABASE();

Dónde mirar

El archivo .sql que vino con el recurso, y el esquema propio del framework.

Cómo arreglarlo

Importá el SQL del recurso, y después comprobalo:

mysql -u user -p tubasededatos < recurso/install.sql

Añadí una columna que falta sin tocar el resto:

ALTER TABLE users ADD COLUMN phone VARCHAR(20) NULL;

¿Sigues atascado en tu propio código?

Esta página es lo que suele significar este error. Pega tu consola en Server Fixer y ordenará todo lo que haya en ella y te dirá qué hacer primero; y si prefieres no tocarlo, ORBIE puede reparar el script y devolverte el recurso listo para soltar.

bug_reportAbrir el Server Fixer

Para este tipo de error, el Script Optimizer detecta los patrones de consulta que causan esto.

Errores que viajan con este