我在 Java 中工作。我有两个 TextField 对象 t22 和 t23。我的要求如下:我必须从两个文本字段中读取字符串,在两个字符串值之间添加一个空格,并将其插入到 mysql 数据库中的单个字段中。
我尝试了以下查询,但是数据库中没有出现空间。
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+"' '"+t23.getText()+"')");
请纠正我。
为什么不在将其传递给查询之前先在 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();
试试这个:
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+" "+t23.getText()+"')");
使用 mysql 连接select CONCAT('TEST1' , ' ', 'test2');
insert into tmpnursetab (name) values (CONCAT('TEST1' , ' ', 'test2'));
使用任一
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+" "+t23.getText()+"')");
或在 Oracle DB 上:
stat.executeUpdate("insert into tmpnursetab (name) values ('"+t22.getText()+"'|| '"+t23.getText()+"')");