Fórum Erro na criação de constraints #207995
21/01/2004
0
[color=red:3049ea842d]SET SQL DIALECT 3;
/* CREATE DATABASE ´C:\Meus Projetos\SCVP\SCVP.GDB´ PAGE_SIZE 4096
DEFAULT CHARACTER SET */
/* Table: CATEGORIAS, Owner: SYSDBA */
CREATE TABLE ´CATEGORIAS´
(
´COD_CAT´INTEGER NOT NULL,
´NOME_CAT´VARCHAR(50) CHARACTER SET WIN1252 NOT NULL,
´DESC_CAT´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CAT´)
);
/* Table: CIDADES, Owner: SYSDBA */
CREATE TABLE ´CIDADES´
(
´COD_CID´INTEGER NOT NULL,
´COD_UF´INTEGER NOT NULL,
´NOME_CID´VARCHAR(40) CHARACTER SET WIN1252 NOT NULL,
´DESC_CID´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CID´, ´COD_UF´)
);
/* Table: CLIENTES, Owner: SYSDBA */
CREATE TABLE ´CLIENTES´
(
´COD_CLI´INTEGER NOT NULL,
´NOME_CLI´VARCHAR(80) CHARACTER SET WIN1252 NOT NULL,
´DESC_CLI´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CLI´)
);
/* Table: ESTADOS, Owner: SYSDBA */
CREATE TABLE ´ESTADOS´
(
´COD_UF´INTEGER NOT NULL,
´SIGLA_UF´VARCHAR(2) CHARACTER SET WIN1252 NOT NULL,
´DESC_UF´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_UF´)
);
/* Table: ITEMS, Owner: SYSDBA */
CREATE TABLE ´ITEMS´
(
´COD_PED´INTEGER NOT NULL,
´COD_PROD´INTEGER NOT NULL,
´PRECO_PROD´NUMERIC(9, 0) NOT NULL,
´QTD_PROD´INTEGER NOT NULL,
´VALOR_ITEM´NUMERIC(9, 0) NOT NULL,
´DESCONTO´INTEGER,
PRIMARY KEY (´COD_PED´, ´COD_PROD´)
);
/* Table: PEDIDOS, Owner: SYSDBA */
CREATE TABLE ´PEDIDOS´
(
´COD_PED´INTEGER NOT NULL,
´DATA_PED´DATE NOT NULL,
´VALOR_PED´NUMERIC(9, 0) NOT NULL,
´COD_CLI´INTEGER,
´COD_VEND´INTEGER NOT NULL,
PRIMARY KEY (´COD_PED´)
);
/* Table: PRODUTOS, Owner: SYSDBA */
CREATE TABLE ´PRODUTOS´
(
´COD_PROD´INTEGER NOT NULL,
´NOME_PROD´VARCHAR(50) CHARACTER SET WIN1252 NOT NULL,
´DESC_PROD´VARCHAR(70) CHARACTER SET WIN1252,
´PRECO_PROD´NUMERIC(9, 0) NOT NULL,
´ESTOQUE_PROD´INTEGER NOT NULL,
´COD_CAT´INTEGER NOT NULL,
PRIMARY KEY (´COD_PROD´)
);
/* Table: TIPO_USUARIOS, Owner: SYSDBA */
CREATE TABLE ´TIPO_USUARIOS´
(
´COD_TIP´INTEGER NOT NULL,
´TIPO_TIP´VARCHAR(13) CHARACTER SET WIN1252 NOT NULL,
´DESC_TIP´VARCHAR(100) CHARACTER SET WIN1252,
´ADMIN_TIP´VARCHAR(1) CHARACTER SET WIN1252 NOT NULL,
PRIMARY KEY (´COD_TIP´)
);
/* Table: USUARIOS, Owner: SYSDBA */
CREATE TABLE ´USUARIOS´
(
´COD_USU´INTEGER NOT NULL,
´COD_TIP´INTEGER NOT NULL,
´USUARIO´VARCHAR(100) CHARACTER SET WIN1252 NOT NULL,
´SENHA´VARCHAR(100) CHARACTER SET WIN1252 NOT NULL,
´DESC_USU´VARCHAR(70) CHARACTER SET WIN1252 NOT NULL,
PRIMARY KEY (´COD_USU´, ´COD_TIP´)
);
ALTER TABLE ´CIDADES´ ADD CONSTRAINT ´FK_EST_CID_COD_UF´ FOREIGN KEY (´COD_UF´) REFERENCES ESTADOS (´COD_UF´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´ITEMS´ ADD CONSTRAINT ´FK_PED_ITMS_COD_PED´ FOREIGN KEY (´COD_PED´) REFERENCES PEDIDOS (´COD_PED´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´ITEMS´ ADD CONSTRAINT ´FK_PROD_ITMS_COD_PROD´ FOREIGN KEY (´COD_PROD´) REFERENCES PRODUTOS (´COD_PROD´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PEDIDOS´ ADD CONSTRAINT ´FK_CLI_PED_COD_CLI´ FOREIGN KEY (´COD_CLI´) REFERENCES CLIENTES (´COD_CLI´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PEDIDOS´ ADD CONSTRAINT ´FK_VEND_PED_COD_VEND´ FOREIGN KEY (´COD_VEND´) REFERENCES VENDEDORES (´COD_VEND´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PRODUTOS´ ADD CONSTRAINT ´FK_CAT_PROD_COD_CAT´ FOREIGN KEY (´COD_CAT´) REFERENCES CATEGORIAS (´COD_CAT´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´USUARIOS´ ADD CONSTRAINT ´FK_TIPUSU_USU_COD_TIP´ FOREIGN KEY (´COD_TIP´) REFERENCES TIPO_USUARIOS (´COD_TIP´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´VENDEDORES´ ADD CONSTRAINT ´FK_EST_VEND_COD_UF´ FOREIGN KEY (´COD_UF´) REFERENCES ESTADOS (´COD_UF´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´VENDEDORES´ ADD CONSTRAINT ´FK_CID_VEND_COD_CID´ FOREIGN KEY (´COD_CID´) REFERENCES CIDADES (´COD_CID´) ON UPDATE CASCADE ON DELETE NO ACTION;
/* Grant Roles for this database */
/* Grant permissions for this database */[/color:3049ea842d]
Rômulo Barros
Curtir tópico
+ 0Posts
21/01/2004
Rômulo Barros
Gostei + 0
21/01/2004
Vinicius2k
de acordo com seu script, vc não estah criando a table ´VENDEDORES´
espero ter ajudado...
Gostei + 0
21/01/2004
Rômulo Barros
:lol: Que erro infantil
T+
Gostei + 0
21/01/2004
Vinicius2k
Gostei + 0
21/01/2004
Rômulo Barros
SET SQL DIALECT 3;
/* CREATE DATABASE ´C:\Documents and Settings\XP\Desktop\Rômulo\Meus Projetos\SCVP\DataBase\SCVP.GDB´ PAGE_SIZE 4096
DEFAULT CHARACTER SET */
/* Table: CATEGORIAS, Owner: SYSDBA */
CREATE TABLE ´CATEGORIAS´
(
´COD_CAT´INTEGER NOT NULL,
´NOME_CAT´VARCHAR(50) CHARACTER SET WIN1252 NOT NULL,
´DESC_CAT´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CAT´)
);
/* Table: CIDADES, Owner: SYSDBA */
CREATE TABLE ´CIDADES´
(
´COD_CID´INTEGER NOT NULL,
´COD_UF´INTEGER NOT NULL,
´NOME_CID´VARCHAR(40) CHARACTER SET WIN1252 NOT NULL,
´DESC_CID´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CID´, ´COD_UF´)
);
/* Table: CLIENTES, Owner: SYSDBA */
CREATE TABLE ´CLIENTES´
(
´COD_CLI´INTEGER NOT NULL,
´NOME_CLI´VARCHAR(80) CHARACTER SET WIN1252 NOT NULL,
´DESC_CLI´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_CLI´)
);
/* Table: ESTADOS, Owner: SYSDBA */
CREATE TABLE ´ESTADOS´
(
´COD_UF´INTEGER NOT NULL,
´SIGLA_UF´VARCHAR(2) CHARACTER SET WIN1252 NOT NULL,
´DESC_UF´VARCHAR(70) CHARACTER SET WIN1252,
PRIMARY KEY (´COD_UF´)
);
/* Table: ITEMS, Owner: SYSDBA */
CREATE TABLE ´ITEMS´
(
´COD_PED´INTEGER NOT NULL,
´COD_PROD´INTEGER NOT NULL,
´PRECO_PROD´NUMERIC(9, 0) NOT NULL,
´QTD_PROD´INTEGER NOT NULL,
´VALOR_ITEM´NUMERIC(9, 0) NOT NULL,
´DESCONTO´INTEGER,
PRIMARY KEY (´COD_PED´, ´COD_PROD´)
);
/* Table: PEDIDOS, Owner: SYSDBA */
CREATE TABLE ´PEDIDOS´
(
´COD_PED´INTEGER NOT NULL,
´DATA_PED´DATE NOT NULL,
´VALOR_PED´NUMERIC(9, 0) NOT NULL,
´COD_CLI´INTEGER,
´COD_VEND´INTEGER NOT NULL,
PRIMARY KEY (´COD_PED´)
);
/* Table: PRODUTOS, Owner: SYSDBA */
CREATE TABLE ´PRODUTOS´
(
´COD_PROD´INTEGER NOT NULL,
´NOME_PROD´VARCHAR(50) CHARACTER SET WIN1252 NOT NULL,
´DESC_PROD´VARCHAR(70) CHARACTER SET WIN1252,
´PRECO_PROD´NUMERIC(9, 0) NOT NULL,
´ESTOQUE_PROD´INTEGER NOT NULL,
´COD_CAT´INTEGER NOT NULL,
PRIMARY KEY (´COD_PROD´)
);
/* Table: TIPO_USUARIOS, Owner: SYSDBA */
CREATE TABLE ´TIPO_USUARIOS´
(
´COD_TIP´INTEGER NOT NULL,
´TIPO_TIP´VARCHAR(13) CHARACTER SET WIN1252 NOT NULL,
´DESC_TIP´VARCHAR(100) CHARACTER SET WIN1252,
´ADMIN_TIP´VARCHAR(1) CHARACTER SET WIN1252 NOT NULL,
PRIMARY KEY (´COD_TIP´)
);
/* Table: USUARIOS, Owner: SYSDBA */
CREATE TABLE ´USUARIOS´
(
´COD_USU´INTEGER NOT NULL,
´COD_TIP´INTEGER NOT NULL,
´USUARIO´VARCHAR(100) CHARACTER SET WIN1252 NOT NULL,
´SENHA´VARCHAR(100) CHARACTER SET WIN1252 NOT NULL,
´DESC_USU´VARCHAR(70) CHARACTER SET WIN1252 NOT NULL,
PRIMARY KEY (´COD_USU´, ´COD_TIP´)
);
/* Table: VENDEDORES, Owner: SYSDBA */
CREATE TABLE ´VENDEDORES´
(
´COD_VEND´INTEGER NOT NULL,
´NOME_VEND´VARCHAR(80) NOT NULL,
´CPF_VEND´VARCHAR(14) NOT NULL,
´RG_VEND´VARCHAR(12) NOT NULL,
´DT_NASC_VEND´DATE NOT NULL,
´END_VEND´VARCHAR(150) NOT NULL,
´CEP_VEND´VARCHAR(10) NOT NULL,
´COD_CID´INTEGER NOT NULL,
´COD_UF´INTEGER NOT NULL,
´FONE_RES_VEND´VARCHAR(9),
´FONE_CEL_VEND´VARCHAR(9),
´EMAIL_VEND´VARCHAR(90),
PRIMARY KEY (´COD_VEND´)
);
ALTER TABLE ´CIDADES´ ADD CONSTRAINT ´FK_EST_CID_COD_UF´ FOREIGN KEY (´COD_UF´) REFERENCES ESTADOS (´COD_UF´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´ITEMS´ ADD CONSTRAINT ´FK_PED_ITMS_COD_PED´ FOREIGN KEY (´COD_PED´) REFERENCES PEDIDOS (´COD_PED´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´ITEMS´ ADD CONSTRAINT ´FK_PROD_ITMS_COD_PROD´ FOREIGN KEY (´COD_PROD´) REFERENCES PRODUTOS (´COD_PROD´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PEDIDOS´ ADD CONSTRAINT ´FK_CLI_PED_COD_CLI´ FOREIGN KEY (´COD_CLI´) REFERENCES CLIENTES (´COD_CLI´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PEDIDOS´ ADD CONSTRAINT ´FK_VEND_PED_COD_VEND´ FOREIGN KEY (´COD_VEND´) REFERENCES VENDEDORES (´COD_VEND´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´PRODUTOS´ ADD CONSTRAINT ´FK_CAT_PROD_COD_CAT´ FOREIGN KEY (´COD_CAT´) REFERENCES CATEGORIAS (´COD_CAT´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´USUARIOS´ ADD CONSTRAINT ´FK_TIPUSU_USU_COD_TIP´ FOREIGN KEY (´COD_TIP´) REFERENCES TIPO_USUARIOS (´COD_TIP´) ON UPDATE CASCADE ON DELETE NO ACTION;
ALTER TABLE ´VENDEDORES´ ADD CONSTRAINT ´FK_EST_VEND_COD_UF´ FOREIGN KEY (´COD_UF´) REFERENCES ESTADOS (´COD_UF´) ON UPDATE CASCADE ON DELETE NO ACTION;
[color=red:b0f676ebdb]ALTER TABLE ´VENDEDORES´ ADD CONSTRAINT ´FK_CID_VEND_COD_CID´ FOREIGN KEY (´COD_CID´) REFERENCES CIDADES (´COD_CID´) ON UPDATE CASCADE ON DELETE NO ACTION[/color:b0f676ebdb]
/* Grant Roles for this database */
/* Grant permissions for this database */
Gostei + 0
21/01/2004
Vinicius2k
note que seu PK da tabela CIDADES eh concatenado pelo código da cidade e da UF e vc estah referenciando apenas o código da cidade...
ou vc cria um outro índice UNIQUE com o código da cidade apenas ou referencia com a chave concatenada... depende do seu modelo lógico...
espero ter ajudado...
Gostei + 0
21/01/2004
Rômulo Barros
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)