首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > VFP >

怎么修改dbf表与sql表中的自变量字段的起始值

2013-01-01 
如何修改dbf表与sql表中的自变量字段的起始值?在VFP的dbf表与sql数据库表中都建立了自变量字段,起始值为1,

如何修改dbf表与sql表中的自变量字段的起始值?
    在VFP的dbf表与sql数据库表中都建立了自变量字段,起始值为1,增值为1。现在表中数据已被多次删除(有时全部删除)与增添,表中的自变量字段的值已越来越大。如何通过手工修改与编程修改,重新设置自变量字段值(将现在表中的多行记录中的自变量字段值重新设置为起始值为1,增值为1)?敬向电脑专家请教,不胜感激!
[解决办法]
本帖最后由 apple_8180 于 2012-10-31 12:49:26 编辑

1、我说的就是用代码实现,上面我说的是方法而已,知道方法了就照着方法写代码即可,如:
*-- 此处为插入代码
Begin Transaction
SQLExec(连接句柄,'BEGIN TRANSACTION')
llSuccess=Tableupdate(1,.F.,'视图名')
If llSuccess
SQLExec(连接句柄,'IF @@TRANCOUNT>0 COMMIT TRAN')
End Transaction
Else
SQLExec(连接句柄,'IF @@TRANCOUNT>0 ROLLBACK TRAN')
Rollback
Tablerevert(.T.,'视图名')
Requery('视图名')&& 失败后刷新视图
*-- 此处为再次插入代码
Begin Transaction
SQLExec(连接句柄,'BEGIN TRANSACTION')
llSuccess=Tableupdate(1,.F.,'视图名')
If llSuccess
SQLExec(连接句柄,'IF @@TRANCOUNT>0 COMMIT TRAN')
End Transaction
Else
SQLExec(连接句柄,'IF @@TRANCOUNT>0 ROLLBACK TRAN')
Rollback
Tablerevert(.T.,'视图名')
Messagebox("保存失败!操作将还原。",48,"信息提示")
Endif
Endif

[解决办法]
本帖最后由 apple_8180 于 2012-10-31 12:48:39 编辑 问题2:
*-- 对于 dbf 和 临时表(临时表通过视图更新远程表[SQL Server]):
Create Cursor 表名 (编号 C(13),其他字段1 C(10),其他字段2 I)
Browse Title "现在表是空的"
Insert Into 表名 (编号) Select 'XP'+Str(Val(Nvl(Max(Substr(编号,3)),Dtos(Date())+'000'))+1,11) From 表名 Where Substr(编号,3,8)=Dtos(Date())
Browse Title "现在表中有1条记录"
Insert Into 表名 (编号) Select 'XP'+Str(Val(Nvl(Max(Substr(编号,3)),Dtos(Date())+'000'))+1,11) From 表名 Where Substr(编号,3,8)=Dtos(Date())
Browse Title "现在表中有2条记录"
Return

热点排行