添加grid到sql数据库

heiqiqiou 2004-09-06 06:53:55
我的界面有个grid表格,我向grid中输入数据,如何将grid中我输入的数据保存到我的数据库
表dg中,注:grid和dg的结构完全相同!!!
...全文
180 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fyfcom 2004-09-13
  • 打赏
  • 举报
回复
可以貼出你得到臨時表dg2的語句嗎
Samensiu 2004-09-11
  • 打赏
  • 举报
回复
你试试改为:
select dg2
scan
update dg set 日期=dg2.日期 .... where dg.订单编号=dg2.订单编号 && 就是说不要:from dg,dg2
endscan
heiqiqiou 2004-09-07
  • 打赏
  • 举报
回复
我的意思是,我的grid.recordsource=dg2,dg2是我通过"查询"sql数据表dg得到的临时表
,我在grid中修改了部分的数据,现在我想把修改过的数据重新保存到dg中,我该怎么做!!!??
比如说,我修改了日期,但是订单编号没有改变
我使用了update dg set 日期=dg2.日期 ....from dg,dg2 where 订单编号=dg2.订单编号
结果是update失败!!

十豆三 2004-09-07
  • 打赏
  • 举报
回复
以新值更新表中的记录。

UPDATE [DatabaseName1!]TableName1 SET Column_Name1 = eExpression1
[, Column_Name2 = eExpression2 ...]
WHERE FilterCondition1 [AND | OR FilterCondition2 ...]
参数
[DatabaseName1!]TableName1
TableName1 指定要更新记录的表。
DatabaseName1 指定包含表的非当前数据库名。如果包含表的数据库不是当前数据库,则应包含这个数据库名。在数据库名称与表名之间有一个感叹号 (!)。

SET Column_Name1 = eExpression1 [, Column_Name2 = eExpression2
指定要更新的列以及这些列的新值。如果省略了 WHERE 子句,在列中的每一行都用相同的值更新。
WHERE FilterCondition1 [AND | OR FilterCondition2 ...]]
指定要更新的记录。
FilterCondition 指定要更新的记录所符合的条件。可以根据需要加入多个筛选条件,条件之间用 AND 或 OR 操作符连接。也可以用 NOT 操作符对逻辑表达式的值取反,或者使用 EMPTY() 函数检查字段是否为空。

备注
UPDATE-SQL 命令只能用来更新单个表中的记录。

可以在 UPDATE - SQL 命令命令后立即通过检查 _tally 系统内存变量来确定被更新的记录数。

与 REPLACE 命令不同的是,在更新可共享访问的表中的多个记录时,UPDATE-SQL 命令使用了记录锁。在多用户的情况下,使用记录锁能减少记录竞争,但是可能会降低使用性能。为了达到最好的性能,请以独占使用方式打开表或用 FLOCK()
函数锁定表。

示例
下面示例打开 testdata 数据库中的 customer 表。用 UPDATE -SQL 来设置所有 maxordamt 字段中的值到 25。

CLOSE DATABASES

OPEN DATABASE (HOME(2) + 'Data\testdata')
USE Customer && 打开 customer 表

* Set and display amounts for customers
UPDATE customer SET maxordamt = 25
BROWSE FIELDS company,maxordamt
yifanlxj 2004-09-07
  • 打赏
  • 举报
回复
在你离开文本框是写出如下类似语句就可以了:
sqlexec(sqlHandle,"update xxx set xxx=?dddd where cccc=?ggggg")
解释:
xxx:sql 中的表名;
?dddd: 被更新的值;
?ggggg: where的条件;
带问号“?”是参数比如:
字段名为:uuu,则为?yyy.uuu (yyy为VFP中的表)
heiqiqiou 2004-09-07
  • 打赏
  • 举报
回复
那我的grid表格绑定的是sql数据表dg,我又在grid中修改了数据,我如何将修改后的数据在返回保存到dg中呢!?而且如果我的记录很多遍历或是一条条的保存需要很多时间,我只需要将我修改了数据的记录update就ok,我该怎么做
xclzteb 2004-09-07
  • 打赏
  • 举报
回复
遍历整个表的记录值,然后逐条写回数据库。
YuyuanJian 2004-09-07
  • 打赏
  • 举报
回复
要一条一条记录保存到sql中去
520zyb 2004-09-07
  • 打赏
  • 举报
回复
在文本框的valid或lostfocus事件中写:
select dg2 &&当前dg2中的记录
sqlexec(sqlHandle,"update dg set 日期='"+dg2.日期+"' where 订单编号='"+dg2.订单编号+"'")

2,723

社区成员

发帖
与我相关
我的任务
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
  • VFP社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧