在用delphi編寫數據庫時,能否不用table控件,來完成資料新增,修改,刪除等工作?(200分)

  • 主题发起人 主题发起人 zrobin
  • 开始时间 开始时间
Z

zrobin

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大俠:

在用delphi編寫數據庫程式時,能否不用table控件,來完成資料新增,修改,刪除等工作?
請舉例說明! 價值200分!!! 走過路過,不可錯過!!!
 
用Tquery啊。
首先,它提供和table一模一样的方法,
另外,支持sql
 
小猪回答的没错,你如果用ODBC支持的数据库还可用AOD express 来实现数据库的相关操作
 
如果是單一表,當然先容易; 但是在新增,修改,刪除時,涉及到對其他表的操作,
比如計算其他表中的數值等; 又該如何處理呢?
 
agree 小猪<br>比如計算其他表中的數值等; 又該如何處理呢?<font color=red>用sql语句</font>
 
還要用到其他的控件嗎?
在新增時,要系統根據給出的條件(如時間等)自動產生序號,如何處理?
所能否給出一個例子來說明?
 
如果是ado可以用adodataset,
普通的可以用dataset.query,可以完成。
另外可以用sql语句完成。
 
使用TQuery,非常方便。
如果你要自动产生序号,可以使用存储过程,另外要小心序号不要重复。
 
用SQL啦,SQL足够灵活,基本上你的需求都能达到.Sum()求和、Max()、Min()、Total()等等
函数。
 
为什么要用Table 不支持SQL不说,速度也慢!
 
江維﹕如果不用table那dbedit不是無用武這地呢﹐一些備注及圖片字段如何處理較好呢﹖
 
备住和图片,QUERY一样能处理
如果是开发C/S结构,我劝大家最好别
用Ttable,速度受影响;造成网络负担重
我只要某一字段的值,它可能把所有
值段都传给我;
 
如果同一個數據庫由分布于兩地的人員分別做各自的資料,由于人員太多,不可能可能用
DDN直接連到主機上作業,但要達到分享資料的目的,如何處理?
 
Tquery.sql.add属性.
'insert into 表(a,b,c) values(edit1.text,edit2.text,edit3.text)'
'update 表 set field1=xxx,field2=yyyy where field2=zzzz'
'delete from 表 where field2=xxxx'

 
  大家说的已经够多了,TQuery比TTable灵活一些,但还是各有所长。

  在C/S结构之中,TQuery可以将数据传输量减少到最小,所有的大型数据库都支持
SQL语句,而且基本都对SQL语句进行了速度等等方面的优化。所以C/S结构里面千万不
要用TTable。
  至于在本地数据库系统里面,TQuery和TTable各有优势,如果是大量的数据更新,
TTable在增加、修改数据等等方面比TQuery速度要快很多。但是我们常常使用的是小数
据量的更新,所以我们常常使用TQuery + 缓存更新来解决数据的查询、更新问题。这
里还有一个问题,就是缓存更新的临时文件,这个也许是BDE管理缓存更新的败笔吧!
可恨的“del*.mb”文件!!!

  
 
我看都没有很什么好说的了,自已一试明了,多动动H(and) and H(ead)
 
我看都没有很什么好说的了TQuery
 
很多控件可以用呀
比如不返回数据集的话,用AdoCommand
SqlText := 'Insert Into GtyeTbl (GtyeName,GtyeDesc) '+
'Values (:GtyeName,:GtyeDesc) ';
cmdOper.CommandType := cmdText;
cmdOper.CommandText := SqlText;
cmdOper.Parameters.ParamValues['GtyeName']:= edtName.Text;
cmdOper.Parameters.ParamValues['GtyeDesc']:= memDesc.Text;
cmdOper.Execute;
返回数据集,用AdoDataSet或AdoQuery等
//读取数据库表 tbl数据
try
qryShow.Close;
qryShow.SQL.Clear;
qryShow.SQL.Add('Select * from GtyeTbl');
qryShow.Open;
except
On E:Exception do
begin
ShowMessage(E.Message);
Close;
end;
end;

大家都说得对
 
后退
顶部