- - PR -
VB.NETでSQLSERVERのリンクサーバー使用について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-09-28 10:05
お世話になります。
VB.NETでSQLSERVERのリンクサーバーを使ったストアド作成しました。 環境は、WINDOWS XP .NET 2003 SQLSERVER 2000 です。 リンクサーバーを使ったストアドを、VB.NET側で呼び出しているのですが、 間違いなく、検索結果には値が入っています。 しかし、エラーがおき、型DBNULLに型STRINGのキャストが有効でありません。 というメッセージが表示されました。 やりたいことは、自分のPC内のサーバーと他のDBサーバーとを比較した 検索結果を取得したいのです。 VB.NETでは、SQLSERVERのリンクサーバーを使用できないのでしょうか? また、別の方法はないのでしょうか? どなたかご教授をお願いします。 | ||||||||
|
投稿日時: 2004-09-28 10:43
確認なのですが、
このことはどうやって確認しましたか? あと、
このエラーはどのようなタイミングで発生しますか? (DataGridにバインドした時など) エラー内容から察すると、リンクサーバとかは関係なく単純に結果がNull値のものをStringにキャストしようとしてるだけかな?と思ってしますのですが、どうなのでしょうか? | ||||||||
|
投稿日時: 2004-09-28 11:07
Ten.さん、お返事ありがとうございます。
引用: -------------------------------------------------------------------------------- リンクサーバーを使ったストアドを、VB.NET側で呼び出しているのですが、 間違いなく、検索結果には値が入っています。 >このことはどうやって確認しましたか? -------------------------------------------------------------------------------- ですが、ストアドだけで実行すると検索結果は出てきました。 構文自体エラーも起きず、リンクサーバーも確認できました。 リンクサーバー作成時の設定の問題かなと思い、ただいま調べ中です。 引用: -------------------------------------------------------------------------------- しかし、エラーがおき、型DBNULLに型STRINGのキャストが有効でありません。 というメッセージが表示されました。 >このエラーはどのようなタイミングで発生しますか? >DataGridにバインドした時など) -------------------------------------------------------------------------------- ですが、ストアドをVB.NET側で呼び出し実行する際、TRY内でストアドを実行した時に エラーがあれば、CATCH内でex.ToStringでエラー内容を返しています。 その時のエラーが上記のものです。 エラーは、SQLコマンドを実行した際に起きています。 引用;-------------------------------------------------------------------------- エラー内容から察すると、リンクサーバとかは関係なく単純に結果がNull値のものをStringにキャストしようとしてるだけかな?と思ってしますのですが、どうなのでしょうか? ------------------------------------------------------------------------------- ストアドでは実行した時、結果はNULLではありませんでした。 しかし、VB.NETで呼び出した時は、検索結果の値には、何も入ってませんよ という感じだと思うのですが、DBNULLを返しています。 自分なりにもう少し調べてみます。 また、なにか分かりましたら、お教え下さい。 |
1