Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite!!
sou iniciante e estou tentando cria um programa de cadastro de cliente, estou usando o IBCosole para cria o Banco de Dados, peguei um modele como base.
modelo:
CREATE TABLE "CADCLIENTES"
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
);
acresentei mais alguns campos no meu;
CREATE TABLE "CADCLIENTES"
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"CPF/CNPJ" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
"IDEQUIPAMENTO" NUMERIC(50),
"IDCOMPBORDO" VARCHAR(100),
"ICICHIP" VARCHAR(100),
"QUANTCARRO" NUMERIC(50),
"RESPONCARRO1" VARCHAR(100),
"RESPONCARRO2" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
);
quando mando copila ele dar esse erro
Dynamic SQL Error
SQL error code = -842
Precision must be from 1 to 18
Statement: CREATE TABLE "CADCLIENTES"
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"CPF/CNPJ" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
"IDEQUIPAMENTO" NUMERIC(50),
"IDCOMPBORDO" VARCHAR(100),
"ICICHIP" VARCHAR(100),
"QUANTCARRO" NUMERIC(50),
"RESPONCARRO1" VARCHAR(100),
"RESPONCARRO2" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
gostaria da ajuda de vocês para saber pq ele esta dando esse erro e como posso soluciona ele
dês de ja obrigado pela ajuda
josuel
muito obg pela sua ajuda foi de um forma muito clara vlw mesmo
>
Boa noite!!
sou iniciante e estou tentando cria um programa de cadastro de cliente, estou usando o IBCosole para cria o Banco de Dados, peguei um modele como base.
modelo:
CREATE TABLE "CADCLIENTES"
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"CPF/CNPJ" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
"IDEQUIPAMENTO" NUMERIC(50),
"IDCOMPBORDO" VARCHAR(100),
"ICICHIP" VARCHAR(100),
"QUANTCARRO" NUMERIC(50),
"RESPONCARRO1" VARCHAR(100),
"RESPONCARRO2" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
);
quando mando copila ele dar esse erro
Dynamic SQL Error
SQL error code = -842
Precision must be from 1 to 18
Statement: CREATE TABLE "CADCLIENTES"
(
"COD" NUMERIC(4, 0) NOT NULL,
"NOME" VARCHAR(100),
"CPF/CNPJ" VARCHAR(100),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(100),
"IDEQUIPAMENTO" NUMERIC(50),
"IDCOMPBORDO" VARCHAR(100),
"ICICHIP" VARCHAR(100),
"QUANTCARRO" NUMERIC(50),
"RESPONCARRO1" VARCHAR(100),
"RESPONCARRO2" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
gostaria da ajuda de vocês para saber pq ele esta dando esse erro e como posso soluciona ele
dês de ja obrigado pela ajuda
Olá Angello
O código correto para gerar sua tabela é este abaixo
CREATE TABLE "CADCLIENTES"
(
"COD" INTEGER NOT NULL,
"NOME" VARCHAR(100),
"CPF_CNPJ" VARCHAR(20),
"ENDE" VARCHAR(100),
"NUMTEL" VARCHAR(18),
"IDEQUIPAMENTO" INTEGER,
"IDCOMPBORDO" VARCHAR(100),
"ICICHIP" VARCHAR(100),
"QUANTCARRO" INTEGER,
"RESPONCARRO1" VARCHAR(100),
"RESPONCARRO2" VARCHAR(100),
"EMAILRESP1" VARCHAR(100),
"EMAILRESP2" VARCHAR(100),
CONSTRAINT "PK_CADCLIENTES" PRIMARY KEY ("COD")
);
O problema estava no tipo de dado que você usou para chave Primary key. para chave primaria Sempre dê preferência ao tipo de dado inteiro (Integer).
Obs.: Tambem alterei a quantidade de caracteres que você deixou para a coluna (CPF_CNPJ) e (NUMTEL). Veja que para digitar um CNPJ que é maior do que o CPF só são necessários 18 caracteres ja com formatação e para o numero de telefone já formatado ((0xxdd)xxxx-xxxx ) só é preciso 16 caracteres. Veja os outros campos para saber se é mesmo necessario esses espaços todos.
flw