2016-04-07 13 views
0

SQLクエリでは、データをフィルタリングするためにWHERE IN句を使用しています。私はWHERE IN句で35000個のフィールドを渡していた場合、ExecuteNonQueryは私がのExecuteNonQueryはexcutedが、例外が電流をcatchedないところで試してキャッチを使用していたインスタンス例外クエリWHERE IN節が機能しない

に設定されていない

オブジェクト参照をスローしますメソッド、それは親メソッド(ボタンクリック)でキャッチ

私は35000から25000にカウントを減らした場合、SQLクエリが正常に動作します。助けてください。

SELECT * FROM COUNTRY WHERE CountryID in ('1','2',......'35000') 

私もSQLでTemp Tableを使用しようとしましたが、同じエラーが発生しました。

IF OBJECT_ID('tempdb..#temp)IS NOT NULL DROP #TEMP 
CREATE TABLE #TEMP 
(CountryID int NULL) 
INSERT INTO #TEMP VALUES ('1') 
. 
. 
. 
INSERT INTO #TEMP VALUES('10') 

SELECT * FROM COUNTRY WHERE CountryID IN(SELECT CountryID from #temp) 

オブジェクトのNULL参照エラーは問題ではありません.SQLクエリでWhere In節の問題を解決するにはどうすればよいですか。 SQLクエリのWhere in句を避けるために可能な解決策は何でしょうか。

助けてください。ありがとう。

+1

を動作するはず? – jarlh

+0

[オブジェクト参照がオブジェクトのインスタンスに設定されていません]という意味の重複は可能ですか?(http://stackoverflow.com/questions/779091/what-does-object-reference-not-set-to-an -instance-of-an-object-mean) –

+0

コードを表示する –

答えて

3

利用代わりに参加し、これはあなたが使用している製品をDBMS

SELECT * FROM COUNTRY c INNER JOIN #temp t on c.CountryId=t.CountryId 
+0

あなたのコードを試してみます。 – Cegone

+0

それはあなたのために働いた、正しい答えをマークしてください:) –

0

どうしてですか?

​​

+2

おそらくギャップがありますか? – jarlh

+0

@jarlh私は彼がどのIDを選択するのかは分かりませんが、「OR」、「Country from 1〜4 CountryIDまたは8〜10 CountryID – crimson589

+0

1〜10を使用してSELECT *を使用できます。 IDは '12584'、65845 '、' 75896 'のようになります。 – Cegone

関連する問題