如何在Java中写模糊查询
轉(zhuǎn)載自:https://blog.csdn.net/gradonisis/article/details/105323751
如何在Java中寫(xiě)模糊查詢
模糊查詢是什么?
數(shù)據(jù)庫(kù)中查詢:
Java中查詢:
模糊查詢和一般查詢?cè)贘ava中的區(qū)別:
模糊查詢是什么?
模糊查詢:就是不知到具體內(nèi)容,只知道部分內(nèi)容,然后根據(jù)部分內(nèi)容去數(shù)據(jù)庫(kù)中查詢信息。
數(shù)據(jù)庫(kù)中查詢:
如:在14班查找姓“張”的同學(xué)的信息。
數(shù)據(jù)庫(kù)中是:select * from t-student where sname like ‘張%’ and class=14;
其中**%**表示“張”后面不知道有多少字符串,
如果是確認(rèn)名字是兩個(gè)字,也可以用 sname like ‘張_’,一個(gè)下劃線表示后面只有一個(gè)字符。
Java中查詢:
如:在14班查找姓“張”的同學(xué)的信息。
class Tstudent{
String tname =“張%;”
int class =14;
SqlMy sm =new SqlMy();
sm.xg(tname,class)
}
class SqlMy{
void xg(String tname,int class){
Connection conn = DriverManager.getConnection(dbURL,dbUser, dbPwd)
String sql =“select * from t-student where sname like ? and class=?; ”
PreparedStatement pstmt =conn.prepareStatement(sql);
ResultSet rs = null;//查詢語(yǔ)句專業(yè)的代碼
try {
pstmt.setString(1,tname);
pstmt.setInt(2,class);
rs=pstmt.executeQuery();
while(rs.next()){//判斷是否有下一個(gè)值
rs.getInt(“class”)
rs.getString(“tname”)
rs.getString(“sex”)
}
} catch (SQLException e) {
e.printStackTrace();
}
finally {
pstmt.close();
conn.close();
//最后記得關(guān)流
}
}
模糊查詢和一般查詢?cè)贘ava中的區(qū)別:
模糊查詢相對(duì)于一般查詢來(lái)說(shuō)就是多了個(gè) :like。
但是like不能在java中直接寫(xiě)成:tname like %?%,這樣寫(xiě)是錯(cuò)誤的。
如果沒(méi)有%又不能查詢,所以我們可以手動(dòng)的在?參數(shù)前面加個(gè)%,
這樣就可以實(shí)現(xiàn)模糊查詢了。
總結(jié)
以上是生活随笔為你收集整理的如何在Java中写模糊查询的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: [论文学习]TDN: An Integr
- 下一篇: Java 并发编程艺术 读书笔记