❶ java拼sql遇到了關於" ' "符號轉義的問題。
首先將你的值字元串替換下 也就是轉一下
例如你的值是str
str = str.replace("'", "''");
❷ 關於java插入資料庫的轉義字元
為什麼要用單引號呢, 在Java中轉移容易一些, 而且不容易出錯:
String aa = "更多財經資訊:<a href=\"http://www.caixun.com\" target=\"_blank\">www.caixun.com</a> <br><br>";
這樣存入資料庫的時候是雙引號, 就不會和資料庫的單引號起沖突了, 對數據格式的處理盡量多在Java中進行, 這樣避免錯誤, 而且出問題了也好調.
❸ 在java中如何將String類型轉換成java.sql.Date類型
String str="1989-11-23 12:25:20";
java.sql.Date date=java.sql.Date.valueof(str);
這樣是可以轉換的,但是前提是str的日期格式要和資料庫中的一樣,上面是MySql的,其他的如Oracle就和這個不一樣了
❹ java如何拼接sql語句
你咋不試試,
String columnStr;
String valueStr;
for(int i=0; i<columns.length; i++){
columnStr = "(" + columns[i] + ",";
valueStr = "'( \"" + value[i] + ",";
}
參考JAVA轉義字元。網路一下吧。你自己試試,我這里沒裝jdk,懶得弄了,准備休息了。
❺ java轉義字元postgreSQL資料庫
使用預處理.估計%應該用轉義字元..用預處理安全防止sql注入..具體方法如下:
//conn = DBUtil.getInstance().getConnection();這個是獲取conn的一個方法
//DBUtil.getInstance().close(pstmt, conn);這個是我關閉pstmt conn的方法
//關鍵就是使用PreparedStatement 這個預處理。要導入包import java.sql.PreparedStatement;
public void addStudent(BufferedReader br){
String name = null;
String sex = null;
String age = null;
String id = creatId();
Connection conn =null;
PreparedStatement pstmt = null;
System.out.println("請輸入學生相應的信息:");
try {
//從鍵盤輸入學生名稱
System.out.println("請您輸入學生姓名 :");
name = br.readLine();
//從鍵盤輸入性別
System.out.println("請您輸入學生性別 :");
sex = br.readLine();
//從鍵盤輸入年齡
System.out.println("請您輸入學生年齡 :");
age = br.readLine();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// System.out.println(name + sex + age);
// insertStudent(name,sex,age);
conn = DBUtil.getInstance().getConnection();
//通過輸出判斷conn是否正確
// String sql = "insert into t_student(id,name,sex,age) values(111,"+"'"+name+"','"+sex+"',"+age+")";
String sql = "insert into t_student(id,name,sex,age) values(?,?,?,?)";
try {
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, id);
pstmt.setString(2, name);
pstmt.setString(3, sex);
pstmt.setString(4, age);
pstmt.execute();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DBUtil.getInstance().close(pstmt, conn);
System.out.println("記錄插入成功");
}
如果還有疑問聯系我:qq 6 0 3 051135