2014-11-21 11 views
0

我想使用Sybase內置功能(ISNULL用繩子和焦炭和轉換(數字(31,11),---)用事先準備好的聲明。如何在使用預編譯語句插入語句的內置函數中使用sybase?

我想在下面的方式,但無法實現它。

第一:

String query1 = "insert into dbase..tempTable values (nullif(?,'X'),nullif(?,'Y'),convert(numeric(31,11),?))"; 
    pst.setString(1,str); 
    pst.setString(2,str2); 
    pst.setString(3,a); 

二:

String query1 = "insert into dbase..tempTable values (?,?,?)"; 
pst.setString(1,"nullif(str1,'P")"); 
pst.setString(2,"nullif(str2,'PPP')"); 
pst.setDouble(3,------); 

回答

0

嘗試使用下面的代碼:

insert into dbase..tempTable(Column1, Column2, Column3) 
 
select isnull(?,'X'),isnull(?,'Y'),cast(? as numeric(31,11)) 
 

 
pst.setString(1,str); 
 
pst.setString(2,str2); 
 
pst.setString(3,100);

希望這有助於:)