W
w8u
Unregistered / Unconfirmed
GUEST, unregistred user!
学习一下各位老大怎么样处理插入或修改数据的,我感觉我的方法效率太低。
一直以来,我们插入和修改数据都是以这种方式的:(以单表为例)
一个窗体上排放置几个按钮,如“增加”,“修改”,“删除”,“查询”,
下排放置一个DBGrid,显示当前表中的数据。如下:
╔══════════════════════════════════╗
║ 增加 修改 删除 查询 ║
╟──────────────────────────────────╢
║ ║
║ DBGrid ║
║ ║
║ ║
║ ║
║ ║
║ ║
╚══════════════════════════════════╝
当用户单击“增加”时,新弹出一个窗体,在该窗体上有:
数据集组件TTable或TQuery,连接到具体的表上。
Datasource组件。
各种数据感知组件如TDBEdit,等,
“保存”按钮。
在Form.OnShow事件中将TDataSet打开,根据增加或修改状态(由参数传入),
设置数据集为增加或修改模式。
然后保存,处理各种细节。通过TDataset.post方式保存。
如果用户是单击“修改”,则同样弹出和“增加”时一样的窗口,只是设置状态为修改。
然后将Tdataset定位到需要修改的记录,修改数据后保存。
==================================
我的疑虑:
在增加或修改时,我们首先要打开表,把数据全部取出来,然后设置为插入或修改状态,
再保存。可是我们仅仅是为了插入一条数据,完全没有必要取出全部数据。
敢问各位老大,你们是怎么样处理这种事情的。
一直以来,我们插入和修改数据都是以这种方式的:(以单表为例)
一个窗体上排放置几个按钮,如“增加”,“修改”,“删除”,“查询”,
下排放置一个DBGrid,显示当前表中的数据。如下:
╔══════════════════════════════════╗
║ 增加 修改 删除 查询 ║
╟──────────────────────────────────╢
║ ║
║ DBGrid ║
║ ║
║ ║
║ ║
║ ║
║ ║
╚══════════════════════════════════╝
当用户单击“增加”时,新弹出一个窗体,在该窗体上有:
数据集组件TTable或TQuery,连接到具体的表上。
Datasource组件。
各种数据感知组件如TDBEdit,等,
“保存”按钮。
在Form.OnShow事件中将TDataSet打开,根据增加或修改状态(由参数传入),
设置数据集为增加或修改模式。
然后保存,处理各种细节。通过TDataset.post方式保存。
如果用户是单击“修改”,则同样弹出和“增加”时一样的窗口,只是设置状态为修改。
然后将Tdataset定位到需要修改的记录,修改数据后保存。
==================================
我的疑虑:
在增加或修改时,我们首先要打开表,把数据全部取出来,然后设置为插入或修改状态,
再保存。可是我们仅仅是为了插入一条数据,完全没有必要取出全部数据。
敢问各位老大,你们是怎么样处理这种事情的。