私は最近、ストアドプロシージャの結果をフェッチするために両方を使用しました。私はfetchrow_arrayがストアドプロシージャ内で選択した行の出力を返すことに気付きました。 fetchall_arrayrefは、ストアドプロシージャの選択された行とともに、最後の行のストアドプロシージャのステータスを返します。fetchrow_arrayとfetchall_arrayrefとの違いは、ストアドプロシージャを使用するとき
なぜこの違いがあり、fetchall_arrayrefの内部でストアドプロシージャのステータスを取得しないようにする方法がありますか?
マイ手順
CREATE PROCEDURE [dbo].[check_date_proc]
@dateStart DATETIME
AS
BEGIN
SELECT
check_date
FROM
date_Table
WHERE
data_date = @dateStart
END;
GO
を保存し、私は
20160920
0
を返しfetchall_arrayref
20160920
fetchrow_array戻り
exec check_date_proc '20160920';
このようにそれを呼び出します
ありがとう
実行しているクエリがどのように表示されるか、出力の例を挙げることができますか?それは解決のために他人を助けるかもしれません。 – simbabque
'fetchrow_array'は単一の行(したがって名前)だけを返します。 'while(my @row = $ sth-> fetchrow_array){print" @row \ n "; } ' – ThisSuitIsBlackNot
私は 'while(my @aData = $ rQuery-> fetchrow_array()){ $ rOutputHandler join('、 '、@ aData)を実行しています。 } ' – Imran