線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1221
推到 Plurk!
推到 Facebook!

ADOQUERY的問題

尚未結案
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-07 23:35:33 IP:140.115.xxx.xxx 未訂閱
新手的問題大家不要見怪.....昨天開始寫 但是很急 所以就先上來問嚕    應該是用到SELECT MAX(ID_FieldName) FORM TABLE_NAME語法 把抓出來的數存進一個變數中(是用AS來做嗎?)    問題描述: 我現在想從一個名為「客戶」的TABLE中,取出其COLUMN「客戶編號」中最大值,因為我想新增資料擺在最後面的欄位,所以我模仿我找到的一個其他程式的TQuery的作法,結果不行 可以請會的大大指導一下嗎 ~  還有就是由於語法還不太會 可以請教哪裡有比較清楚的文章嗎? 看了很多裡面都是用一些 >
stillalive
初階會員


發表:7
回覆:148
積分:41
註冊:2004-04-07

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-08 00:14:17 IP:211.75.xxx.xxx 未訂閱
在TQuery 下SQL SELECT MAX(ID_FieldName) AS VARIABLE FORM TABLE_NAME 然後用TQuery.FieldName('VARIABLE').INTEGER 應可得之 . TRY IT .
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-08 01:58:30 IP:140.115.xxx.xxx 未訂閱
可是我就是用相同的方法 改成ADOQUERY卻不行ㄝ 她會顯示找不到VARIABLE 而且可以請各位高人解釋一下嗎 TQuery.FieldName('VARIABLE') 這個敘述是做什麼用的阿 而且到底是.INTEGER?還是.AsString呢?我看有些是寫.AsStringㄝ < >真是覺得自己好弱喔< >
Chance36
版主


發表:31
回覆:1033
積分:792
註冊:2002-12-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-06-08 02:11:35 IP:203.204.xxx.xxx 未訂閱
charse 你好    1.在TQuery 下SQL SELECT MAX(ID_FieldName) AS VARIABLE FORM TABLE_NAME 然後用TQuery.FieldName('VARIABLE').AsINTEGER 應可得之 看到沒(紅色的部份),SQL 中 .... As xxxx 時xxxx即為欄位的別名(相當於欄位名稱), 2.Query1.FieldName('VARIABLE') 這個敘述是做什麼用的阿 取得Query1中欄位名稱為'VARIABLE'的欄位, 3.使用AsInteger或使用AsString(或是其他)端看你的應用,其實都可以,只是要注意型態的問題,如要把值存到Label1.Caption,因為Label1.Caption為文字型態,則用AsString比較直接,(Label1.Caption := Query1.FieldByName('VARIABLE').AsString),但如果要運算用的則使用AsInteger或AsFloat比較好(cc := cc Query1.FieldByName('VARIABLE').AsInteger; 累加到cc變數) 發表人 - chance36 於 2004/06/08 02:16:39
stillalive
初階會員


發表:7
回覆:148
積分:41
註冊:2004-04-07

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-06-08 05:47:44 IP:211.75.xxx.xxx 未訂閱
我親自試過應該可以 , 你用 adoquery.sql := SELECT MAX(ID_FieldName) AS VARIABLE FORM TABLE_NAME ; adoquery.active := true ; showmessage(inttostr(adoquery.FieldByName('VARIABLE').ASINTEGER)) ; 便可知得之 .
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-06-08 09:31:46 IP:140.115.xxx.xxx 未訂閱
首先多謝Chance36版大和stillalive 原本以為沒這麼快有人回 想不到兩位凌晨還這麼熱心的指導感動中.... 但是小子實在愚魯還是弄不出來 版大的解釋很清晰 原來使用 > 不過因為我在用 >< >< >< >< >< >< >< > 真是很抱歉 給各位添麻煩了 發表人 -
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-06-08 09:37:33 IP:202.39.xxx.xxx 未訂閱
adoquery.sql.Text := SELECT MAX(ID_FieldName) AS VARIABLE FORM TABLE_NAME ;
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-06-08 11:17:51 IP:140.115.xxx.xxx 未訂閱
[Error] Unit2.pas(57): Undeclared identifier: 'select' [Error] Unit2.pas(57): Illegal character in input file: '客' ($ABC8) [Error] Unit2.pas(57): Operator not applicable to this operand type [Error] Unit2.pas(58): Incompatible types: 'Integer' and 'String' [Fatal Error] Project1.dpr(8): Could not compile used unit 'Unit2.pas'    ERROR的訊息 感覺COMPILER把SELECT視為一未宣告的變數 發表人 -
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-06-08 11:27:31 IP:202.39.xxx.xxx 未訂閱
引言: [Error] Unit2.pas(57): Undeclared identifier: 'select' [Error] Unit2.pas(57): Illegal character in input file: '客' ($ABC8) [Error] Unit2.pas(57): Operator not applicable to this operand type [Error] Unit2.pas(58): Incompatible types: 'Integer' and 'String' [Fatal Error] Project1.dpr(8): Could not compile used unit 'Unit2.pas' ERROR的訊息 感覺COMPILER把SELECT視為一未宣告的變數 發表人 - >< face="Verdana, Arial, Helvetica"> 失禮, 要用單引號把 SQL 語句包起來 adoquery.sql.Text := 'SELECT MAX(ID_FieldName) AS VARIABLE FORM TABLE_NAME';
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-06-08 18:15:58 IP:140.115.xxx.xxx 未訂閱
還是COMPILE不過 奉上我的原程式碼 .....   with Adoquery1 do   begin       Close;       SQL.Clear;       sql.Text:= 'select max(客戶編號) as num_column from 客戶';       num_column:= FieldbyName('num_column').AsInteger+1; .... 各位看看哪裡錯了 要別人幫忙DEBUG真是不好意思< >< > 感覺 >
stillalive
初階會員


發表:7
回覆:148
積分:41
註冊:2004-04-07

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-06-08 18:29:44 IP:211.75.xxx.xxx 未訂閱
with Adoquery1 do begin Close; SQL.Clear; sql.Text:= 'select max(客戶編號) as num_column from 客戶'; ------------------------------------------------------ OPEN ; MAXNUM := FieldbyName('num_column').AsInteger 1; MAXNUM 請先定義
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-06-08 18:56:48 IP:140.115.xxx.xxx 未訂閱
開了新主題 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=51509 發表人 - charse 於 2004/06/09 00:03:40
T.J.B
版主


發表:29
回覆:532
積分:497
註冊:2002-08-14

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-06-08 21:34:40 IP:218.160.xxx.xxx 未訂閱
打開 欄位編輯器 看你的 [性別]欄位有沒有加進去 天行健 君子當自強不息~~@.@
------
天行健
君子當自強不息~~@.@
charse
一般會員


發表:5
回覆:9
積分:7
註冊:2004-06-07

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-06-08 22:12:42 IP:140.115.xxx.xxx 未訂閱
如果版大是指DATAFIELD的欄位的話 那我有加入
stillalive
初階會員


發表:7
回覆:148
積分:41
註冊:2004-04-07

發送簡訊給我
#15 引用回覆 回覆 發表時間:2004-06-08 23:36:24 IP:211.75.xxx.xxx 未訂閱
charse 你好 不同問題請另外開欄提問 , 謝謝合作 .
系統時間:2024-06-02 11:41:28
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!