我创建了一个存储过程,它将值保存在表temporal.y然后我用" select"但只有在我的sqlserver中运行良好。当你在codeigniter中调用该过程时,我生成了一个空数组。
这是我在CODEIGNITER中的程序
function verificacion_ocupados($codigo,$llave_maestra){
$sql = "sp_verificacionocupados ?, ?";
$query = $this->db->query($sql,array($codigo, $llave_maestra));
$data = $query->result();
$query->free_result();
return $data;
}
这是我的程序
CREATE PROCEDURE [dbo].[sp_verificacionocupados]
@codigo int,
@llave_maestro varchar(50)
AS
DECLARE @finicio date;
DECLARE @ffinal date;
DECLARE @codigo_dias int;
DECLARE @no VARCHAR(100);
create table #pivote(
code int
);
SET @no='veremos';
BEGIN
SELECT @ffinal=Oel_Fecha_Fin,@finicio=Oel_Fecha_Inicio
FROM Operaciones_Especiales_Llave
where Em_Codigo=@codigo and Oel_Estado=2 and Th_Llave=@llave_maestro ;
IF @@ROWCOUNT>0
BEGIN
INSERT INTO #pivote VALUES (2);
END
END
SELECT code from #pivote;
GO
这只是我正在进行的更大规模咨询的一个例子。 我认为问题出在临时表中,并且当我调用返回数据时。
谁知道问题是什么? 。提前致谢
答案 0 :(得分:0)
将其更改为以下内容。
function verificacion_ocupados($codigo,$llave_maestra)
{
$sql="sp_verificacionocupadose ?, ?";
$query=$this->db->query('call sp_verificacionocupadose("$codigo","$llave_maestra")'));
$data=$query->result();
$query->free_result();
return $data;
}