我在Java工作。我有两个TextField对象t22和t23。我的要求如下: 我必须从两个文本字段中读取字符串,在两个字符串值之间添加一个空格,然后将其插入到mysql数据库中的单个字段中。
我尝试了以下查询,但是,db中没有出现空格。
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+"' '"+t23.getText()+"')");
请纠正我。
答案 0 :(得分:4)
为什么在将Java传递给查询之前不先在java中连接?
String _value = t22.getText() + " " + t23.getText()
stat.executeUpdate("insert into tmpnursetab (name) values ('" + _value + "')");
但查询容易被SQL Injection
攻击。更好地使用PreparedStatements
准备声明的例子。
String _value = t22.getText() + " " + t23.getText()
String _query = "insert into tmpnursetab (name) values (?)";
PreparedStatement pstmt = con.prepareStatement(_query);
pstmt.setString(1, _value);
pstmt.executeUpdate();
答案 1 :(得分:2)
试试这个:
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+" "+t23.getText()+"')");
答案 2 :(得分:0)
使用mysql concat select CONCAT('TEST1' , ' ', 'test2');
insert into tmpnursetab (name) values (CONCAT('TEST1' , ' ', 'test2'));
答案 3 :(得分:0)
使用
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+" "+t23.getText()+"')");
或在Oracle DB上:
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+"'|| '"+t23.getText()+"')");