Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

344
Visualizações
Express.js ER_TRUNCATED_WRONG_VALUE_FOR_FIELD: valor entero incorrecto: '' para la columna 'id' en la fila 1

En mi archivo main.js, la cadena es "hola, 0, 0, 0" (vacía en la segunda posición si la lee en la matriz) debe poder pasar NULL a la base de datos.
FYI: funcionará si la segunda posición es un 0 y no está vacía
Estoy tratando de dividir la cadena "," en var como se muestra a continuación.

 var Val = req.body.string.split(","); var one = Val[0]; var two = Val[1]; var three = Val[2]; var four = Val[3]; var five = Val[4]; let sqlquery = "INSERT INTO TESTING (one, two, three, four, five) VALUES (?,?,?,?,?)"; let newrecord = [one, two, three, four, five]; db.query(sqlquery, newrecord, (err, result) => { if (err) { return console.error(err.message); } else res.send("Added in database");

y tengo este error
ER_TRUNCATED_WRONG_VALUE_FOR_FIELD: valor entero incorrecto: '' para la columna 'tres' en la fila 1

La tabla que creé: CREAR PRUEBA DE TABLA (un VARCHAR (50), dos BOOLEAN, tres INT (4), cuatro INT (4), cinco BOOLEAN, CLAVE PRINCIPAL (nombre));
los campos son todos NULL
No hay incremento automático en la tabla anterior, hay otra tabla que creé exactamente de la misma manera pero con identificación de incremento automático pero aún arroja el mismo error

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Como sabes que el parámetro three es un número, puedes escribir

 var three = Val[2] || null;

Supongo que luego ejecutas un comando como

 db.query(sqlquery, [one, two, three, four, five]);

Entonces, si Val[2] = "0" , obtienes three = "0" , y la base de datos acepta este valor de cadena para un 0 numérico.

Pero Val[2] = "" es un valor falso , por lo tanto, obtienes three = null , y es de esperar que la base de datos lo acepte para un valor NULL.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda