none
foreign Key RRS feed

  • Pergunta

  • Amigos programadores! Quero uma ajuda de vocês.

    Eu tenho um banco de dados chamado dbControleVenda e neste banco contém a tabela Cliente e venda, tem outras mas vou especificar nessas duas.

    CREATE TABLE [dbo].[Cliente] (
        [Id_Cliente]     INT           NOT NULL,
        [Nome]           VARCHAR (100) NOT NULL,
        [DataNascimento] VARCHAR (10)  NOT NULL,
        [CPF]            VARCHAR (MAX) NOT NULL,
        [RG]             VARCHAR (MAX) NOT NULL,
        [CEP]            VARCHAR (10)  NOT NULL,
        [Bairro]         VARCHAR (50)  NOT NULL,
        [Endereco]       VARCHAR (100) NOT NULL,
        [Numero]         INT           NOT NULL,
        [Cidade]         VARCHAR (100) NOT NULL,
        [Estado]         VARCHAR (30)  NOT NULL,
        [Telefone]       VARCHAR (15)  NULL,
        [Celular]        VARCHAR (16)  NOT NULL,
        [Email]          VARCHAR (100) NULL,
        PRIMARY KEY CLUSTERED ([Id_Cliente] ASC)
    );

    CREATE TABLE [dbo].[Venda] (
        [Id_Venda]   INT             NOT NULL,
        [parcelas]   INT             NOT NULL,
        [Desconto]   DECIMAL (18, 2) NOT NULL,
        [ValorTotal] DECIMAL (18, 2) NOT NULL,
        [Lucro]      DECIMAL (18, 2) NOT NULL,
        [DataVenda]  VARCHAR (16)    NOT NULL,
        [HoraVenda]  VARCHAR (10)    NOT NULL,
        [Id_Cliente] INT             NOT NULL,
        PRIMARY KEY CLUSTERED ([Id_Venda] ASC),
        FOREIGN KEY ([Id_Cliente]) REFERENCES [dbo].[Cliente] ([Id_Cliente])
    );


    Se na tabela Cliente estiver registro e não está relacionada com a tabela venda, é possível excluir o registro pretendido, se não, tem que excluir o registro da venda primeiro para depois o cliente por causa da chave secundária.

    Agora vem a pergunta: Existe alguma forma de excluir o registro do cliente sem excluir o registro da venda relacionada ao registro do cliente a ser excluído?

    sexta-feira, 29 de junho de 2018 11:20

Respostas

Todas as Respostas