Boa tarde Guilherme,
Existe um grande risco na inserção de dados por conta do R_E_C_N_O_
e também na deleção lógica de dados quando existe o campo R_E_C_D_E_L_
, assim como você já citou.
Outro ponto importante é o DBAccess que tem cache de diversas informações, ele pode perder o controle de numeração... Se for um comando de DDL, as consequências também podem ser grandes, para isso existe a função TCRefresh
.
Levando em consideração esses pontos, não existe limitação de uso no TCSqlExec
no Protheus, inclusive o Protheus utiliza dessa função em algumas rotinas do padrão.