ODAC如何應用在複雜的SQL語法?? |
尚未結案
|
don750421
一般會員 發表:11 回覆:12 積分:4 註冊:2012-09-27 發送簡訊給我 |
之前都是使用ODBC來連結Oracle
但是目前寫的這程式可能會佈下去給多個使用者用 SO,不可能都幫每個使用者設定ODBC來連結資料庫.. 因為我SQL多下了一些條件,就不清楚該如何使用了 原先的SQL指令如下: select distinct host from mac_m where HOST is not null order by HOST 另外,如果有遇到萬用字元的SQL,又該如何使用呢?? 假設SQL如下 select distinct host from mac_m where HOST = 'H%' 請問有人可以指點一下嗎???謝謝 還是說有人可以提供ODAC方面的Sample Code呢?? 謝謝 [code cpp] cv_OraSession = new TOraSession(NULL); cv_OraQuery = new TOraQuery(NULL); cv_OraSession->Options->Net=True; cv_OraSession->Server="192.168.1.199:1521:TEST"; cv_OraSession->Username="TEST123"; cv_OraSession->Password="TEST"; cv_OraSession->Connect(); cv_OraQuery->Session=cv_OraSession; cv_OraQuery->SQL->Clear(); cv_OraQuery->SQL->Add("select distinct host from mac_m where HOST != Test order by HOST"); cv_OraQuery->ParamByName("Test")->AsString =NULL; if(!cv_OraQuery) cv_OraQuery->Prepare(); cv_OraQuery->Open(); if(0 != cv_OraQuery->RecordCount) [/code] 編輯記錄
don750421 重新編輯於 2013-03-20 22:27:30, 註解 無‧
|
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
這……
這一點都無關ODAC啊… 這是Delphi對SQL的操作方式 參數化的前置碼是「:」 EX: cv_OraQuery->SQL->Text = "SELECT * FROM emp WHERE empid like :id" cv_OraQuery->ParamByName("id")->AsString = Edit1->Text '%' 操作方式和原來的物件是相同的 ===================引 用 don750421 文 章=================== 之前都是使用ODBC來連結Oracle 但是目前寫的這程式可能會佈下去給多個使用者用 SO,不可能都幫每個使用者設定ODBC來連結資料庫.. 因為我SQL多下了一些條件,就不清楚該如何使用了 原先的SQL指令如下: select distinct host from mac_m where HOST is not null order by HOST 另外,如果有遇到萬用字元的SQL,又該如何使用呢?? 假設SQL如下 select distinct host from mac_m where HOST = 'H%' 請問有人可以指點一下嗎???謝謝 還是說有人可以提供ODAC方面的Sample Code呢?? 謝謝 [code cpp] cv_OraSession = new TOraSession(NULL); cv_OraQuery = new TOraQuery(NULL); cv_OraSession->Options->Net=True; cv_OraSession->Server="192.168.1.199:1521:TEST"; cv_OraSession->Username="TEST123"; cv_OraSession->Password="TEST"; cv_OraSession->Connect(); cv_OraQuery->Session=cv_OraSession; cv_OraQuery->SQL->Clear(); cv_OraQuery->SQL->Add("select distinct host from mac_m where HOST != Test order by HOST"); cv_OraQuery->ParamByName("Test")->AsString =NULL; if(!cv_OraQuery) cv_OraQuery->Prepare(); cv_OraQuery->Open(); if(0 != cv_OraQuery->RecordCount) [/code] |
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
一開始講連線的問題
然後卻在問SQL語法的問題... 有點怪 and....萬用字元的查詢應該要用Like 不是 = ..... ===================引 用 GrandRURU 文 章=================== 這…… 這一點都無關ODAC啊… 這是Delphi對SQL的操作方式 參數化的前置碼是「:」 EX: cv_OraQuery->SQL->Text = "SELECT * FROM emp WHERE empid like :id" cv_OraQuery->ParamByName("id")->AsString = Edit1->Text '%' 操作方式和原來的物件是相同的 ===================引 用 don750421 文 章=================== 之前都是使用ODBC來連結Oracle 但是目前寫的這程式可能會佈下去給多個使用者用 SO,不可能都幫每個使用者設定ODBC來連結資料庫.. 因為我SQL多下了一些條件,就不清楚該如何使用了 原先的SQL指令如下: select distinct host from mac_m where HOST is not null order by HOST 另外,如果有遇到萬用字元的SQL,又該如何使用呢?? 假設SQL如下 select distinct host from mac_m where HOST = 'H%' 請問有人可以指點一下嗎???謝謝 還是說有人可以提供ODAC方面的Sample Code呢?? 謝謝 [code cpp] cv_OraSession = new TOraSession(NULL); cv_OraQuery = new TOraQuery(NULL); cv_OraSession->Options->Net=True; cv_OraSession->Server="192.168.1.199:1521:TEST"; cv_OraSession->Username="TEST123"; cv_OraSession->Password="TEST"; cv_OraSession->Connect(); cv_OraQuery->Session=cv_OraSession; cv_OraQuery->SQL->Clear(); cv_OraQuery->SQL->Add("select distinct host from mac_m where HOST != Test order by HOST"); cv_OraQuery->ParamByName("Test")->AsString =NULL; if(!cv_OraQuery) cv_OraQuery->Prepare(); cv_OraQuery->Open(); if(0 != cv_OraQuery->RecordCount) [/code] |
GrandRURU
站務副站長 發表:240 回覆:1680 積分:1874 註冊:2005-06-21 發送簡訊給我 |
|
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |