全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1662
推到 Plurk!
推到 Facebook!

关于ADOTable的开关问题

答題得分者是:Stallion
ntjrr
高階會員


發表:240
回覆:312
積分:110
註冊:2005-04-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-05-04 22:03:22 IP:222.184.xxx.xxx 訂閱
在设计时用ADOTable连接着一个表。这个表是有不断增长的记录的。不知道应该在设计时就设为OPEN,还是在使用时再OPEN。我自己测试的结果如下:如果在设计时就设为OPEN,那么在有30万条记录时初始打开程序很慢需30秒样子,但在做新增记录动做时就较快,一般几秒就行。(但担心一直打开是否会耗费了不该耗费的系统资源?)如果在设计时设为CLOSE,在要用到时再OPNE,用好后CLOSE,这样理论上能省资源,但因记录太多,每次打开关闭就会费时30秒样子。(注:这个表时经常要到的,每天都要开关无数次)请问合理的应该如何设计,谢谢!
------
我的编程起步于ktop,我将永远支持ktop
bruce
中階會員


發表:19
回覆:121
積分:83
註冊:2002-04-16

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-05-04 23:34:06 IP:218.164.xxx.xxx 訂閱
新增資料如果不會修改到舊有資料,那就沒有讀取30萬筆資料的問題
select * from Table whhere 0=1 這樣的指令Open檔案,一樣可以新增資料
但沒有開啟檔案的問題。
multics
一般會員


發表:0
回覆:6
積分:11
註冊:2007-01-21

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-05-05 08:13:07 IP:61.219.xxx.xxx 訂閱
講一句題外話
如果有30萬行的資料,用AdoQuery等的元件可能較好吧。
------
Multics
ntjrr
高階會員


發表:240
回覆:312
積分:110
註冊:2005-04-24

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-05-05 08:55:28 IP:222.184.xxx.xxx 訂閱
我也再问一个稍稍偏一点的话题,用ADOTABEL和ADOQUERY做新增,两者关键的区别在哪?
------
我的编程起步于ktop,我将永远支持ktop
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-05-06 00:27:32 IP:211.22.xxx.xxx 未訂閱
我認為 ON LINE HELP 已經告訴你答案了!

Use TADOQuery to access one or more tables in a data store using SQL statements.
Retrieve data from tables in an ADO data store using SELECT statements. Perform actions on tables and other meta data objects in an ADO data store with statements like INSERT, DELETE, UPDATE, ALTER TABLE, and CREATE TABLE. Execute stored procedures.

Use TADOTable to access data in a single database table using ADO. TADOTable provides direct access to every record and field in an underlying database table. An ADO table component can also work with a subset of records within a database table using ranges and filters.
===================引 用 ntjrr 文 章===================
我也再问一个稍稍偏一点的话题,用ADOTABEL和ADOQUERY做新增,两者关键的区别在哪?
編輯記錄
Stallion 重新編輯於 2007-05-06 00:29:03, 註解 無‧
ntjrr
高階會員


發表:240
回覆:312
積分:110
註冊:2005-04-24

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-05-06 08:10:59 IP:222.184.xxx.xxx 訂閱
因为英文不太好,所以只能看个半懂,我主要是考虑新增资料时用哪一个,查询时肯定用ADOQUERY。我自己的测试好象是ADOQUERY对新增入的资料要求较精确。ADOTABLE相对来讲要求不精确,比如数字的字段也可以用ASSTRING新增进去,或者内容超过设计长度会自己切断后面的。 也就是我自己以为ADOQUERY在做新增时容易出错,而ADOTABEL好象容错的可能性大一点。不知道这想法对不对?
------
我的编程起步于ktop,我将永远支持ktop
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-05-06 12:35:10 IP:211.22.xxx.xxx 未訂閱
當然不對啦!
數字欄位型態的資料,如果你在儲存至資料庫時,使用文字型態的資料輸入,只要文字型態能夠順利隱含式(implicit)轉換為數值形態,都可以成功。
使用ADOTABLE個人認為沒有使用QUERY時方便,使用QUERY經過適當的安排,不但可以適時的更換資料的來源,在SQL語法以及動態變數方面可以彈性更大,這是我的想法,請參考。
系統時間:2024-05-18 20:31:13
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!