请教简单数据库问题!(100分)

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

zhm_good

Unregistered / Unconfirmed
GUEST, unregistred user!
我有一个表,用户要进行,添加,删除,修改记录操作,

删除,修改我直接用 Table,datasource,DBGrid 。在DBGrid的界面中给用户操作,

而进行操作时添加,我不想显示原来表中的记录, ???
 
既然 “进行操作时添加,我不想显示原来表中的记录”
为什么还要 “修改我直接用 Table,datasource,DBGrid”?
好好设计一下吧!
 
用SQL语句做
 
单独做一个数据录入界面了,用edit或dbedit
 
Table.OnNewRecord
begin
Table.Filter := '1=0'
Table.Filtered := True;
end;

Table.After
begin
Table.Filtered := False;
end;
 
我也想单独做一个界面,怎么做呀
用DBedit, 怎么把所用的DBedit添加到表中
 
另外显示一个专门来增加的form就可以了,用dbedit。
 

怎么把DBedit 的内容,添加到表中?

to hryyx:

Table.After Tabele.After????
begin
Table.Filtered := False;
end;
 
在做添加时,我在Table中设置一个过滤,把原来的记录全部过滤掉,此时,DBGrid中
也就没有原来的记录了,现在用户可以做添加操作了,可是怎么使,DBGrid中的记录
添加到原来中? 用SQL,再加一个Query?

分少可再加!! 急呀
 
用dbcontrolgrid,不过最好用edit等这样好控制
 
你把这条新添加的记录保存后,然后再去掉过滤条件。
重新open一次不就出来了。
要不你就新建军一个临时表,结构与那个表一样,将一个dbgrid2与
其关联,当添加是,就显示这个dbgrid,同是其位置是跟你那个显示全部记录的dbgrid1
一样,这样就可以覆盖掉原来那个,感觉就象记录清除了一样。

当你保存新添加的记录后,同时保存到原来那个表中,然后隐藏掉dbgrid2
再打开dbgrid1不就可以了。
 
sorry
Table.AfterPost
begin
Table.Filtered := False;
end;
 
你在做一个专门输入的窗口,用ShowModal显示然后再在新窗口中输入新数据。
 
单独做一个输入窗口,但要保证数据源的一致性,最好用DataModule;
输入窗口用TEdit,TComboBox就可以了,不需要TDBEdit,因为你的目的只是输入.
 
form;
再用SQL,INSERT INTO;
 
用一个edit来输入,然后用字段对象来写入数据库。
ttable1.fields[0].value=edit1.text;
...
ttable1.post;
 
作一个界面,双击table,然后点右键add all fields,
最后,用鼠标将添加的字段拖到界面即可。非常简单。不用写代码!!!
 
我不知道你是先在文本框中输入记录,再点击“添加”完成操作,
还是先点击“添加”再输入记录,
如果是后者的话,s可以用一些笨的方法:
添加时直接隐藏DBGrid表框:DBGrid.visible:=false;
然后可以在“确定”上加显示代码:DBGrid.visible:=true;
 
你没用过“DBNavigator”吗?如果我没听错,你的问题很好解决呀,delphi自己就可以完成了
DBNavigator完成添加删除,两个窗口用一个datasource,把form2 添加到form1中
msn:gm1995@hotmail.com,不是我理解错了吧,呵呵
 
那你不要用dbgrid,使用其它的数据感知控件,如:dbtext,dbedit等等,这样就不会显示其它记录了.[red][/red][8D][:)]
 
后退
顶部