我有用於過濾 參數很多存儲過程我有2個的EditText Cardnumber和Carcode兩者thoose的需要填補之前,我可以得到任何結果如何在某些參數排除或的setNull如果EditText上是空的
所以我的問題是如何獲得的結果,如果其中一個是空的,或者如果它們都是空
protected String doInBackground(String... params) {
try {
Connection con = connectionClass.CONN();
if (con == null) {
z = "Error in connection with SQL server";
} else {
doerTicket = setingPreferences.getString("doerTicket", "");
CallableStatement cs = null;
String query = "exec [file].[usp_getParts] \[email protected]_ItemNumber = ?,\[email protected]_DoerTicket = ?,\[email protected]_CarItemNumber = ?;
cs = con.prepareCall(query);
cs.setString(1, Cardnumber);//edittext(@p_ItemNumber)
cs.setString(2, doerTicket);
cs.setString(3, Carcode);//edittext(@p_CarItemNumber)
ResultSet rs = cs.executeQuery();
while (rs.next()) {
}
} catch (Exception ex) {
z = "Exceptions";
}
return z;
}
}
我目前在SP利用參數
ALTER PROCEDURE [file].[usp_getParts]
, @p_ItemNumber VARCHAR (3000) = NULL
, @p_CarItemNumber NVARCHAR (20) = NULL
, @p_DoerTicket VARCHAR (200) = NULL
或者我還可以通過使用
EXEC @return_value = [file].[usp_getParts]
@p_CarItemNumber = NULL,
@p_ItemNumber = N'*****',
@p_DoerTicket = N'0x01000000f475bad9ea7d1f1d6b142a1b8cc95ce74b3f387cb1388a80097f35a8c1e9131ffa7f4b833553bede4a3abec49254373d06fb3294c60c6d24',
@p_SearchSessionID = @p_SearchSessionID OUTPUT,
@p_TotalRows = @p_TotalRows OUTPUT
不知何故,你的問題很混亂:你寫這兩個領域都必須填補,但你問如何得到結果,如果其中一個或兩個都是空的!? – Tyron78
只是澄清:你是否正在尋找一種方法來避免設置語句參數,如果任何'params'爲空? –
是的,因爲我需要讓他們都填充之前,我可以從中得到結果 –