Estoy realizando la conexión desde pho a SQL server para realizar unos procedimientos almacenados..
Tengo toda la estructura, y bueno funciona para ciertos casos... pero tengo un problema...para uno de los procedimientos debo enviarle las variables sin datos, pero no nulas, es decir que no me lleguen como nulas ni que tampoco me lleguen con espacios... de tal forma que SQLServer lo pueda tomar como número binario 0 character string...
entonces como debo pasarle las variabes.. con que valor? he intentado..
$variable = NULL; //efectivamente llega nula y no funciona.
$variable = ''; // También llega nula.
$variable = "''"; // Llega string de dos comillas, no sirve.
$variable = '""'; //String de doble comilla.
Código PHP:
$enlace = @mssql_connect($servidor, $usuario, $passwd)
or die("No se pudo conectar a $servidor");
$dB_select = @mssql_select_db($nombreDB, $enlace)
or die("No se pudo abrir la bd $nombreDB");
$query = mssql_init("MiProcedimiento", $enlace);
$variable = 'A';
$variable2 = '';
$variable3= '';
mssql_bind($query, "@variable", &$variable, SQLVARCHAR);
mssql_bind($query, "@variable2", &$variable2, SQLCHAR);
mssql_bind($query, "@variable3", &$variable3, SQLVARCHAR, true);
mssql_execute($query);
echo "Resultado" . $variable3 . "<br>";
EXEC MiProcedimiento 'A', '', '' @variable3 OUTPUT
SELECT @variable3
mmm bueno como ven... en SQLServer tiene las dos comillas y asi para el funciona pues es como un 0 binario... no es un nullo.... pero entonces como le envio esto asi desde php.. como le asingo a esto a mis variables?