Situação:
Ao tentar realizar a atualização do sistema, a seguinte mensagem de erro era exibida: Exceção: [FireDAC][Phys][FB]arithmetic exception, numeric overflow, or string truncation string rig.
Solução:
Para resolver essa situação, é preciso excluir a tabela e recriá-la, fazendo a cópia dos dados.
Primeiramente, acesse o IBExpert e pesquise pela tabela do erro, neste caso, a tabela SANGRIA.
Acessando a tabela, vá na aba DATA e clique no botão "Export Data Into Script".
Após copiar os dados da tabela, clique com o botão direito no nome da tabela e selecione "Drop Table".
Na nova aba, clique no botão e cole o script a seguir para criar a tabela SANGRIA. Em seguida, execute o script.
/******************************************************************************/
/*** Generated by IBExpert 16/09/2025 10:22:28 ***/
/******************************************************************************/
/******************************************************************************/
/*** Following SET SQL DIALECT is just for the Database Comparer ***/
/******************************************************************************/
/******************************************************************************/
/*** Tables ***/
/******************************************************************************/
CREATE TABLE SANGRIA (
CODSANGRIA CHAR8 NOT NULL /* CHAR8 = CHAR(8) NOT NULL */,
USUARIO CHAR10 NOT NULL /* CHAR10 = CHAR(10) NOT NULL */,
DATASANGRIA DATA /* DATA = DATE */,
HORASANGRIA VARCHAR5 /* VARCHAR5 = VARCHAR(5) */,
VALOR NUMERICO /* NUMERICO = DOUBLE PRECISION DEFAULT 0 */,
DC VARCHAR1 /* VARCHAR1 = VARCHAR(1) */,
QLIBEROU VARCHAR10 /* VARCHAR10 = VARCHAR(10) */,
MOTIVO VARCHAR250 /* VARCHAR250 = VARCHAR(250) */,
CODEMPRESA VARCHAR2 /* VARCHAR2 = VARCHAR(2) */,
ABERTURACAIXA VARCHAR1 /* VARCHAR1 = VARCHAR(1) */,
CODOPER VARCHAR5 /* VARCHAR5 = VARCHAR(5) */,
COO INTEIRO /* INTEIRO = INTEGER DEFAULT 0 */,
GNF INTEIRO /* INTEIRO = INTEGER DEFAULT 0 */,
MAQUINA VARCHAR4 /* VARCHAR4 = VARCHAR(4) */,
ESPELHOSANGRIA VARCHAR32 /* VARCHAR32 = VARCHAR(32) */,
ID_ROTINA_ORIGEM INTEIRO /* INTEIRO = INTEGER DEFAULT 0 */,
TIPO_VALOR INTEIRO DEFAULT '0' /* INTEIRO = INTEGER DEFAULT 0 */,
CODTURNO VARCHAR2 /* VARCHAR2 = VARCHAR(2) */,
SERIENFCE VARCHAR2 /* VARCHAR2 = VARCHAR(2) */,
CONTROLE VARCHAR15 /* VARCHAR15 = VARCHAR(15) */,
IDCAIXA INTEIRO DEFAULT '0' /* INTEIRO = INTEGER DEFAULT 0 */
);
/******************************************************************************/
/*** Primary Keys ***/
/******************************************************************************/
ALTER TABLE SANGRIA ADD CONSTRAINT PK_SANGRIA PRIMARY KEY (CODSANGRIA, USUARIO);
/******************************************************************************/
/*** Indices ***/
/******************************************************************************/
CREATE INDEX SANG_CODEMPDATA ON SANGRIA (CODEMPRESA, DATASANGRIA);
/******************************************************************************/
/*** Descriptions ***/
/******************************************************************************/
COMMENT ON TABLE SANGRIA IS
'Sangria';
/******************************************************************************/
/*** Privileges ***/
/******************************************************************************/
Agora que a tabela foi recriada, é possível realizar a atualização da base de dados.Observação: Lembre-se de incluir os registros exportados da tabela `SANGRIA`