Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

335
Views
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 answers
Answer question

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 Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!