Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

277
Vistas
Problema con PDO DONDE al usar columnas VARCHAR en SQL Server

Estamos actualizando nuestro MS SQL Server de SQL Server 2012 a la versión actual. Estamos utilizando PDO con el controlador ODBC de M$ que se ejecuta en CentOS Linux. La versión de PHP es 7.4.

El problema es que si hay una condición (preparada) como

 WHERE variable = ?

y la variable es de tipo VARCHAR sale un error

 [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]The data types varchar and text are incompatible in the equal to operator

Un código de ejemplo es así:

 $stmt = $db->prepare("SELECT * FROM Users WHERE user_login = ? AND user_application = ?"); $stmt->execute([$login, $app]);

user_login y user_application son columnas VARCHAR y $login y $app variables de cadena normales de PHP.

No fue un problema con el servidor SQL anterior, la comparación salió bien. No quiero pasar por todo el código base para eludir esto en miles de lugares, entonces, ¿hay alguna configuración en algún lugar (servidor SQL, controlador ODBC, configuración de PHP, ...) donde configurar las cosas "bien" otra vez?

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Parece que fue una especie de error de privilegios después de la migración de la base de datos. Eliminé al usuario que había venido de la operación de restauración y le otorgué los privilegios correctos nuevamente. Solo que, estoy bastante seguro, ya lo había hecho una vez. Y creo que no hubo errores de inicio de sesión al intentar usar la base de datos.

Lo siento por la pregunta tonta. Aunque, siempre he dicho, que no hay preguntas tontas, solo preguntas tontas...

madeja

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda