2016-09-07 29 views
-3

我想插入所有字符串到数据库,除了字符串有零值,例如S:1,B:0,D:1.So在mysql中将插入(S: 1,D:1)没有B:0,因为B有零值。 任何人都可以给我示例代码如何做到这一点, 我试图与此:如何插入除字符串以外的字符串数据的值为零到数据库

String betsmall= "S:"+0; 
String betbig= "B:"+1; 
String bet1= "B1:"+0; 
String bet2= "B2:"+1; 

connection = dbManager.getConnection(); 
PreparedStatement stmts = connection.prepareStatement("INSERT MYSQL"); 
stmts.setString(4, betsmall + ","+ betbig + "," + bet1 + "," +bet2); 

与该代码,结果在数据库是S:0,B:1,B1:0,B2:1。

但我想结果会是这样的B:1,B2:1。

+1

可能的重复http://stackoverflow.com/questions/39325768/how-to-input-new-string-if-there-have-value-except-zero/39325892#39325892 –

+0

@ScaryWombat,不是真的,据我所知,尽管这种关系很容易看到。 –

回答

0
public static void main(String[] args) { 

    String validText = "B1"; 
    String invalidText = "B0"; 

    if(containsZero(validText)) { 
     //Persist in database here 
    } 

    if(containsZero(invalidText)) { 
     //Persist in database here 
    } 
} 

private static boolean containsZero(String text) { 
    return text.contains("0"); 
} 

这是最简单的方法。

+0

它可能可以被改进。我的猜测是'B:10'和'S:101'不算为零值,应该坚持。一个快速和肮脏的解决方案将是'text.endsWith(“:0”)'。一个更加防弹的解决方案会将冒号后面的文本解析为一个整数并将其与0进行比较。 –

相关问题