動態SQL語句

2021-08-11 03:53:04 字數 1431 閱讀 4077

動態使用sql語句的幾點技巧:

動態sql語句,就是sql語句中引數會變化的sql語句,一般在程式中要根據使用者的需要隨時改變其引數值,對於動態sql語句必須注意以下幾點:

●先呼叫close方法,關閉query元件。如果query元件已經關閉,呼叫close方法不會出錯, 也沒有其它影響。

●再呼叫clear方法,清除sql屬性中的現存sql語句,如果不呼叫clear方法,用add方法為sql屬性設定sql語句時,就會追加到原有的sql語句後,造成錯誤。

●呼叫add方法為sql屬性設定新sql語句。

●呼叫open或exec sql方法執行查詢操作。

一般情況下,sql屬性只能包含一條sql語句,有些資料庫伺服器可支援多條sql語句。

sql中日期型字段的查詢技巧:

在sql中查詢時,對於日期型字段有特殊的表示方法,否則查詢中會出現錯誤。比如下面的語句:

select * from  demo where ppdate = 25/07/1999

上面這個查詢語句在執行時就會出現錯誤,因為ppdate = 25/07/1999這個表示式不正確。正確的寫法是:

select * from  demo where ppdate = #25/07/1999#,

如果在查詢語句中使用日期型變數,比如:

select * from  demo where  ppdate = :mydate

那麼,事先對mydate這個變數做日期型別定義是很必要的,否則在以後的引數傳遞中也會出現問題。單擊query元件params屬性後的省略號,開啟引數編輯對話方塊,選擇「mydate」這個引數,在左邊的object inspector視窗中,此引數有乙個datatype屬性,從中選擇ftdate型即可。在中文win9x中,sql語句中日期型別的常數只能為:「年—月—日」和「月—日—年」這兩種格式。

在sql中處理帶空格的字段技巧:

在資料庫的建立中,欄位名中允許使用空格,這方便了使用者,使用者可以從欄位名稱上看出欄位的含義,如species name、species no,但同時為查詢帶來了一些問題,比如下面的查詢語句:

select species no, category, species name, notes from  biolife

這個查詢語句會出現錯誤,需要對上面的查詢語句做如下修改才可以:將查詢的字段用引號引起來(單引號和雙引號都可以),在其前面加上資料表的名稱。修改後的語句如下:

select biolife."species no", biolife."category", biolife."species name", biolife."notes" from "biolife.db" biolife

上面的語句中biolife是資料表的別名"biolife.db" 。當然對於沒有空格的字段可以不加引號,上面的字段都加上了引號。

動態SQL語句

動態sql語句 1.if 條件 2.choose,where 和 otherwise 條件 3.where 條件 4.trim 條件 5.foreach 迴圈 6.set 條件 7.bind if 有條件的包含where子句的一部分 比如 select from blog where state a...

動態SQL語句

dao的方法 update的配置方法 使用update標籤和set標籤實現動態生成sql語句 當nickname,birthday,email,pic屬性不為空,而且不為空串,則設定值 步驟在resources目錄下建立資料夾,注意 資料夾不是點號,而是斜槓。在目錄下建立userdao.xml配置檔...

動態SQL語句

動態sql語句 if標籤 例子 select from product where name like concat where標籤 標籤會進行自動判斷 如果任何條件都不成立,那麼就在sql語句裡就不會出現where關鍵字 如果有任何條件成立,會自動去掉多出來的 and 或者 or。例子 selec...