+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 3 su 3

Sql Server 2012 Relazione 1:1 Problema FOREIGN KEY

  1. #1
    L'avatar di Codice_da_Vinci
    Codice_da_Vinci non è in linea Scolaretto
    In un db ho delle tabelle collegate tra di loro in diverse relazioni, ad esempio:
    fornitori ---- ddtfornitore - relazione uno a molti
    ddtfornitore – ddtprodotti - realazione uno a molti
    ddtfornitore – ddttotale - realazione 1 a 1
    In quest’ultima tabella ottengo il problema Impossibile creare la relazione 'FK_Totaleddt_ddtfornitore'.
    L'istruzione ALTER TABLE è in conflitto con il vincolo FOREIGN KEY "FK_Totaleddt_ddtfornitore". Il conflitto si è verificato nella tabella "dbo.ddtfornitore", column 'idddt' del database "Prod2015_Server".
    Faccio uso dello Stored Procedure per poi inserirle in VB.2010
    Le procedure della tabella ddttotale sono:
    ALTER proc [dbo].[mostra_totaleddt]
    as
    select * from totaleddt order by idddt
    
    ALTER proc [dbo].[inserisci_totaleddt]
    @nddt varchar (50),
    @imponibilemerce decimal (18,2),
    @scontomerce varchar (50),
    @scontatomerce decimal (18,2),
    @scontato decimal (18,2),
    @aliqivamerce varchar (50),
    @ivamerce decimal (18,2),
    @totalemerce decimal (18,2),
    @trasporto decimal (18,2),
    @aliquotaivatrasporto varchar (50),
    @ivatrasporto decimal (18,2),
    @totaletrasporto decimal (18,2),
    @imponibileddt decimal (18,2),
    @ivaddt decimal (18,2),
    @totaleddt decimal (18,2)
    as
    INSERT INTO totaleddt (nddt,imponibilemerce,scontomerce,scontato,aliqivamerce,ivamerce,totalemerce,trasporto,aliquotaivatrasporto,ivatrasporto,totaletrasporto,imponibileddt,ivaddt,totaleddt)values (@nddt,@imponibilemerce,@scontomerce,@scontato,@aliqivamerce,@ivamerce,@totalemerce,@trasporto,@aliquotaivatrasporto,@ivatrasporto,@totaletrasporto,@imponibileddt,@ivaddt,@totaleddt)
    
    I due campi in relazione sono: idddt entrambi chiavi primarie di ogni tabella l’identy di entrambi è settato su SI
    Ultima modifica di Codice_da_Vinci; 15-12-2014 12:43 

  2. #2
    L'avatar di Codice_da_Vinci
    Codice_da_Vinci non è in linea Scolaretto
    Agguingo ulteriori informazioni

    dalla proprietà della relazioni ho impostato su NO le voci
    attiva vincolo della chiave esterna
    Attiva per replica
    e riesco a salvare il record non mi appare più l'errore.
    Apparentemente sembra tutto a posto se seleziono il record della tabella ddtFORNITORE mi corrisponde il record aggiunto nella tabella DDTTOTALE.
    Se chiudo e riavvio il programma da VB2010 i record non sono più correlati tra di essi

  3. #3
    L'avatar di Codice_da_Vinci
    Codice_da_Vinci non è in linea Scolaretto
    Penso di aver risolto definitivamente.
    Alle istruzioni del secondo post si verificava un problema con la cancellazione del record figlio.
    Dalla proprietà della relazione ho riportato il valore Attiva vincolo per chiave esterna su SI
    In questo modo riesco ad effettuare tutte le operazioni in modo simultaneo su tre tabelle collegate tra di esse (e visibili in tre datagridview) con diverse relazioni
    Uno a Molti
    Uno a Uno
    Molti a Molti

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Virtualizzare Windows Server 2012
    Da giunespo nel forum Microsoft Windows
    Risposte: 0
    Ultimo Post: 17-10-2020, 15:23
  2. Risposte: 2
    Ultimo Post: 22-04-2019, 22:32
  3. Access collegato a SQL Server Express 2012 si blocca
    Da guittone nel forum Microsoft Access
    Risposte: 4
    Ultimo Post: 11-11-2014, 21:54
  4. Risposte: 5
    Ultimo Post: 05-02-2013, 23:03
  5. [MySQL]Problema su Foreign Key
    Da merluzzo nel forum MySQL
    Risposte: 2
    Ultimo Post: 10-02-2009, 19:38