Hibernate HQL like 語句的用法

2021-06-16 05:05:03 字數 619 閱讀 3420

string str = "中文字串";

string hql = "from table as t where t.field like '%" + str + "%'";

query query = getsession().createquery(hql);

query.list();

使用這種形式傳入引數str, 會導致控制台輸出:

from table as t where t.field like '% ????%' 

之類的亂碼, 從而在資料庫找不到匹配記錄.

據說這是hibernate3.0 like子句處理中文的乙個問題, 3.1已得到修正。3.0版可以通過設定引數解決。改正如下:

string str = "中文字串";

string hql = "from table as t where t.field like :param";

query query = getsession().createquery(hql);

query.setstring("param", "%" + str + "%");

query.list();

一定要注意傳進來的字串變數是否現實亂碼,如為亂碼則永遠查不到。

php用if語句實現查詢 用if條件語句

使用專業的if條件語句,可以更好的整理指令碼結構,似的層此分明,清晰易懂。if語句的結構 一 單分支的if語句 結構 if 條件測試操作 例如 if 磁碟已用空間 then 命令序列 then 報警 二 雙分支的if語句 結構 if 條件測試操作 例如 if 80埠是否在監聽 then 命令序列1 ...

用sql語句彙總 實現語句的合併

待驗收入庫單 create table t cw warehousing entry bosid number not null,wareid varchar2 50 入庫單編號 stocktime varchar2 50 採購時間 empid varchar2 50 登記人 cw addr var...

用switch語句和break語句構成的選擇結構

一 switch語句 switch語句形式如下 switch 表示式 二 switch語句的執行過程 當執行switch語句時,首先計算緊跟其後一對括號中的表示式的值,然後在switch語句體內尋找與該值吻合的case標號。如果有與該值相等的標號,則執行該標號後開始的各語句,包括在其後的所有case...