📄 only_id.prg
字号:
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
* 文件名: ONLY_ID.PRG <-- 本文件由 UnFoxAll 创建
* -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
SET MESSAGE TO '获取唯一性标志...'
SELECT 1
GO TOP
OLD_ID = 0
ERROR_NUM = 0
ISALL = .F.
DO WHILE .NOT. EOF()
NEW_ID = TXL_ID
IF NEW_ID <= OLD_ID
IF ISALL
REPLACE TXL_ID WITH OLD_ID + 1
ELSE
NANSWER = ;
MESSAGEBOX('停止! 在下列位置:' + CHR(13) + CHR(13) + ' 记录号=' + ALLTRIM(STR(RECNO())) + ;
',ID=' + ;
ALLTRIM(STR(NEW_ID)) + ;
';' + ;
CHR(13) + ;
' 记录号=' + ;
ALLTRIM(STR(RECNO() - 1)) + ;
',ID=' + ;
ALLTRIM(STR(OLD_ID)) + ;
CHR(13) + ;
CHR(13) + ;
'是否修复?',19,'唯一ID号发生错误!')
ERROR_NUM = ERROR_NUM + 1
IF ERROR_NUM >= 3
NANSWER2 = MESSAGEBOX('是否要全部修复?',36,'提示')
IF NANSWER2 = 6
ISALL = .T.
ERROR_NUM = 0
NANSWER2 = 0
LOOP
ELSE
ISALL = .F.
ERROR_NUM = 1
ENDIF
ENDIF
DO CASE
CASE NANSWER = 7
ERROR_NUM = 1
CASE NANSWER = 6
REPLACE TXL_ID WITH OLD_ID + 1
CASE NANSWER = 2
MESSAGEBOX('由于唯一ID号的错误没有修复,可能会引起错误操作!',48,'警告')
RETURN
ENDCASE
ENDIF
ENDIF
OLD_ID = TXL_ID
SKIP
ENDDO
= TABLEUPDATE(.T.)
IF ERROR_NUM > 0
MESSAGEBOX('为了保证ID号的唯一性,现在重新校验一次!',64,'确认')
DO ONLY_ID
ENDIF
*
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -