![](/img/trans.png)
[英]ElasticSearch indexing string as integer then getting back the integer value in search result
[英]java search-getting an integer value from a string preparedstatement
我有這個Java代碼,並且我希望能夠將YEAR
(這是一個int
)搜索到TextField
並顯示一個表。 如何在prepareStatement
實現它? 我需要解析嗎?
try
{
connection = DBConnect.getConnection();
//int filmyear = Integer.parseInt(txtSearch.getText());
statement = connection.prepareStatement("SELECT filmtitle, filmyear, filmgenre, companyname FROM production, film, company WHERE (LOWER(filmtitle) like LOWER (?) OR "
+ "LOWER (filmgenre) like LOWER (?) OR filmyear = ?)and production.companyid = company.companyid AND production.filmid = film.filmid");
statement.setString(1, "%" +txtSearch.getText()+"%");
statement.setString(2, "%" +txtSearch.getText()+"%");
// statement.setInt(3, +txtSearch.getText());
resultSet = statement.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(resultSet));
}catch(SQLException e)
{
e.printStackTrace();
}
如您所見,我試圖創建另一個statement.setInt(3, +txtSearch.getText());
,我懷疑這是錯誤的。
filmtitle
, filmgenre
和filmyear
在同一表中。
任何幫助表示贊賞,謝謝
我想您已經嘗試過了。 它應該工作正常。
int filmyear = Integer.parseInt(txtSearch.getText());
然后
statement.setInt(3, filmyear);
我認為您可以將filmyear搜索為字符串,這樣可以為您提供適當的結果。
statement.setString(3,+ txtSearch.getText());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.