2016-04-02 22 views
0

DB'den sonuç almak için basit java kodu çalıştırıyorum. Ama her zaman indeks 1'in menzil dışında olduğunu gösterir. WHERE yan tümcesinde WHERE yan tümcesini nasıl değiştirebilirim? Bu hatayı aşağıdaki gibi döndürebilirim.MSSQL SELECT Deyimi WHERE ifadesinde hata

com.microsoft.sqlserver.jdbc.SQLServerException: The index 1 is out of range. 
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:170) 
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setterGetParam(SQLServerPreparedStatement.java:698) 
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setValue(SQLServerPreparedStatement.java:707) 
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setString(SQLServerPreparedStatement.java:1015) 

Lütfen bu sorunu çözmek için yardım edin.

+1

yerine '?' ile ?. –

cevap

1

? sql '' (tek tırnak) içinde olmamalıdır. Sadece olmalı?

String sql = "SELECT * FROM [MediaPrima_IVR].[dbo].[call_back] WHERE CLID= ? and FLAG = '0'"; 
+0

Çok teşekkür ederim. bu bir sorun. Sonuçlar şimdi geri döndü. – dmaprasad

+0

Çok hoş geldiniz. Lütfen kabul ettiğim cevabı işaretleyin. –

+0

Elbette. Cevap almak için 6 dakika beklemek zorunda :) – dmaprasad

-1
String sql = "SELECT * FROM [MediaPrima_IVR].[dbo].[call_back] WHERE CLID= ? and FLAG = '0'"; 
System.out.println(sql); 
+0

Çok teşekkür ederim. Sorun bu – dmaprasad

+1

@ prasad Belki de sorunu nasıl çözdüğünüze dair biraz açıklayıcı? –

+0

@prasad İkinize de aynı cevap verilir. Ve doğruydu, bu yüzden her iki cevabı kabul ediyorum. :) – dmaprasad

İlgili konular