Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Rufen Sie gespeicherte Prozeduren von PHP-Codeigniter auf

Ich freue mich sagen zu können, dass ich meinen Job behalten werde.

Hier ist der Beitrag, der mein Problem gelöst hat. Zur Erinnerung, ich arbeite mit Codeigniter an einer PHP- und MSSQL-Datenbank:

Im Modell:

public function execute_sp($var1 = NULL,$var2 = NULL, $var3 = NULL, $var4 = NULL, $var5 = NULL, $var6 = NULL, $var7 = NULL, $var8 = NULL, $var9 = NULL, $var10 = NULL){
$sp = "stored_procedure_name ?,?,?,?,?,?,?,?,?,? "; //No exec or call needed

//No @ needed.  Codeigniter gets it right either way
$params = array(
'PARAM_1' => NULL,
'PARAM_2' => NULL,
'PARAM_3' => NULL,
'PARAM_4' => NULL,
'PARAM_5' => NULL,
'PARAM_6' => NULL,
'PARAM_7' => NULL,
'PARAM_8' => NULL,
'PARAM_9' => NULL,
'PARAM_10' =>NULL);

$result = $this->db->query($sp,$params);

Im Controller:

$var1 = 'value';
$var2 = 'value';
$var3 = 'value';
$var4 = 'value';
$var5 = 'value';
$var6 = 'value';
$var7 = 'value';
$var8 = 'value';
$var9 = 'value';
$var10 = 'value';

$this->model->sp($var1, $var2, $var3, $var4, $var5, $var6, $var7, $var8, $var9, $var10);

Es funktioniert!

Quelle, die so sehr geholfen hat:Geben Sie die Ausführung einer gespeicherten Prozedur von PHP an einen Microsoft SQL SERVER aus Antwort von Benutzer @Ulises Burlando