2012-04-16 4 views
0

KohanaはPHPフレームワークです。 これはドキュメントです。 このフレームワークでプロシージャを呼び出す方法 私はこの質問について検索し、質問しました。kohanaでプロシージャを呼び出す方法3.1

か...それは、DB接続に何か間違っているようです

$conn = Database::instance();  
$queryStr = "call sp_createUser('$nick_name','$email','$password','127.0.0.1')"; 
$query = DB::query(Database::SELECT, $queryStr); 
$query->execute($conn); 

が、いくつかの例外があります。..

Database_Exception [ 1312 ]: PROCEDURE sp_createUser can't return a result set in the given context [ call sp_createUser('1','1','1','127.0.0.1') ] 

insert_id in Kohana 3

これは私のコードです:よう 私はそれを修正することができます...いくつかの助けを求める..

答えて

0

$query->compile(Database::instance);を使用してクエリ文字列を検査し、そのバグを検索します。

あなたのPROCEDURE本体も教えてください。 PROCEDUREのようなsemmsは、互換性のない形式のデータをKohanaに返します。

$query->compile(Database::instance);戻り文字列はmysqlで直接実行されますか?

+0

コールsp_createUser( '1'、 '1'、 '1'、 '127.0.0.1')、それは.soは何も間違っデシベルで正常に実行することができますクエリ文字列で置き換えます。 – user1335597

+0

いいえ、手続き内容、コードは –

+0

MySQLで動作させるためにPHPでどのモジュールを使用しますか? mod_mysqlまたはmod_mysqli?ストアドプロシージャを操作するにはmod_mysqliが必要です。 –

-2

SELECTでコールを交換してみてください...

$queryStr = "SELECT sp_createUser('$nick_name','$email','$password','127.0.0.1')"; 
+0

プロシージャは、CALL文(http://dev.mysql.com/doc/refman/5.1/en/call.html) –

+1

を使用して呼び出されます。 –

関連する問題