ここから本文です

MS SQLのストアド プロシージャについて質問です。 テーブル名:テストを作成し...

アバター

ID非公開さん

2016/10/2615:51:24

MS SQLのストアド プロシージャについて質問です。

テーブル名:テストを作成しまして以下のようなストアドプロシージャを作成いたしました。

CREATE PROCEDURE [スキーマ名].[ストアドプロシージャ名]
@ID varchar(10),
@NAME varchar(10) OUTPUT

AS

BEGIN
SELECT @NAME = name FROM データベース名.スキーマ名.TEST WHERE id = @ID;
RETURN
END

このストアドプロシージャ―をPHPからPDOを利用して起動し、データを取得したいのですがエラーが出ており取得出来ておりません。
$query = "EXEC [スキーマ名].[ストアドプロシージャ名] ?";
$stmt = $conn->prepare($query);
$atai = '2';
$stmt->bindParam(1, $atai, PDO::PARAM_STR);
$results = $stmt->execute();

エラー:
SQLSTATE[22018]: Invalid character value for cast specification: 206
[Microsoft][ODBC SQL Server Driver][SQL Server]オペランド型の不整合: text は int と互換性がありません (SQLExecute[206] at ext\pdo_odbc\odbc_stmt.c:260)

原因と解決策についてご教示頂けますと幸いでございます。

何卒よろしくお願いいたします。

閲覧数:
206
回答数:
1
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

nor********さん

2016/10/2618:41:08

「データベース名.スキーマ名.TEST」の「ID」のデータ型はなんですか?

この回答は投票によってベストアンサーに選ばれました!

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる