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

187
Views
Comprobando la existencia de valor en MySQL

Estoy desarrollando un sistema de autenticación de usuarios con expressjs. Por lo tanto, para almacenar datos de usuario, uso una base de datos mysql ... Cuando consulto mi base de datos, lo hago con esto: SELECT password FROM USERS WHERE email=EmailHere
El problema con esto es que no conozco una solución elegante para devolver un mensaje de error si el correo electrónico no existe. Algo comprensible?

Entonces, para concluir : quiero saber si ese valor existe cuando consulto a la base de datos para no recibir un mensaje de error.

Editar:

 const query = `SELECT password FROM USERS WHERE email=?;`; let [rows, fields] = await db.promise().query(query, [req.body.email]); const password = rows[0].password; console.log(password);

Esto me da el error: No se pueden leer las propiedades de la 'contraseña' de lectura indefinida.

Entonces está tratando de acceder a la columna .password. ¿Puedo evitar eso?

¡Gracias por adelantado! Qué tengas un lindo día

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Bien resulta:

Si verifico si la longitud de las filas Array> 0 soluciona el problema. En la declaración else, simplemente puedo cerrar la sesión con un mensaje de error para decir que el usuario no existe. Esto podría ser algo como esto:

 if (!rows.length > 0) return res.status(400).send('User doensnt exist!'); const password = rows[0].password; // Declaring the variable after I know it exists.

¡Gracias a @danblack por esta respuesta!

about 4 years ago · Juan Pablo Isaza Report

0

intenta cambiar la consulta así

 SELECT password FROM USERS WHERE email like '%';

o

 SELECT password FROM USERS WHERE email='%';

por favor, si encuentra una solución, no olvide marcarla como respuesta.

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!