none
Migrazione Schema Db , messagio di attenzione RRS feed

  • Domanda

  • Ciao a tutti non so se sono OT , sto utilizzanto entity framework code first per effettuare le migrazioni del mio db, ho aggiunto alcune colonne e adesso quando effettuo la migrazione mi da questo messaggio:

    Avviso: la tabella "NomeMiaTabella" è stata creata ma le dimensioni massime delle righe superano il valore massimo consentito, pari a 8060 byte. Le operazioni INSERT o UPDATE eseguite su questa tabella avranno esito negativo se le dimensioni delle righe risultanti superano il limite massimo consentito.

    sql serve ha un limite nella gestione delle colonne? questa tabella ha circa 385 colonne ma aumenteranno, tra cui molti nvarchar(max) so che per ogni char sono 2byte , per un bit  è 1 byte per un bigint sono 8 byte, ma i nvarchar  non sono dinamici, cioè in base ai caratteri che inserisco?

    Di seguito il mio script per la generazione della tabella dove mi esce l'errore, se tolgo l'ultima proprietà (LetteraRiferimentoOrdineCliente) ancora rientro nella dimensione massima.

    Le dimensioni dei nvarchar non dovrebbero essere a zero se sono vuoti? In base a cosa conteggia questi byte?

    CREATE TABLE [dbo].Prova6(
      [Id] [uniqueidentifier] NOT NULL,
      [FatturaBlocco] [bit] NOT NULL,
      [DescrizioneNumeroDocumento] [nvarchar](max) NULL,
      [TipoDocumentoAcquisto] [nvarchar](max) NULL,
      [TipoDocumentoVendita] [nvarchar](max) NULL,
      [RegistroOperatoriDitta] [nvarchar](max) NULL,
      [RagioneSocialeDitta] [nvarchar](max) NULL,
      [RagioneSocialeAggiuntivaDitta] [nvarchar](max) NULL,
      [IndirizzoDitta] [nvarchar](max) NULL,
      [CapDitta] [nvarchar](max) NULL,
      [ComuneDitta] [nvarchar](max) NULL,
      [ProvinciaDitta] [nvarchar](max) NULL,
      [PartitaIvaDitta] [nvarchar](max) NULL,
      [CodiceFiscaleDitta] [nvarchar](max) NULL,
      [TelefonoDitta] [nvarchar](max) NULL,
      [EmailDitta] [nvarchar](max) NULL,
      [IndirizzoDittaOperativo] [nvarchar](max) NULL,
      [CapDittaOperativo] [nvarchar](max) NULL,
      [ComuneDittaOperativo] [nvarchar](max) NULL,
      [ProvinciaDittaOperativo] [nvarchar](max) NULL,
      [TelefonoDittaOperativo] [nvarchar](max) NULL,
      [EmailDittaOperativo] [nvarchar](max) NULL,
      [VisualizzaDatiAccompagnatore] [bit] NOT NULL,
      [AggiornaMagazzino] [bit] NOT NULL,
      [DifferenzaPrezzo] [decimal](19, 7) NOT NULL,
      [DifferenzaPesoNetto] [decimal](19, 7) NOT NULL,
      [DifferenzaPesoTara] [decimal](19, 7) NOT NULL,
      [TotaleInserimento] [decimal](19, 7) NOT NULL,
      [DifferenzaImporto] [decimal](19, 7) NOT NULL,
      [DifferenzaCasse] [decimal](19, 7) NOT NULL,
      [Selezionato] [bit] NOT NULL,
      [ExtraContabile] [bit] NOT NULL,
      [StatoDocumento] [nvarchar](max) NULL,
      [StatoNotifica] [nvarchar](max) NULL,
      [PecId] [nvarchar](max) NULL,
      [PecIdentificativo] [nvarchar](max) NULL,
      [Validazione] [bit] NULL,
      [Generazione] [bit] NULL,
      [Firma] [bit] NULL,
      [Invio] [bit] NULL,
      [DataInvioEmail] [datetime] NULL,
      [OggettoEmail] [nvarchar](max) NULL,
      [Notifica] [bit] NULL,
      [Scarto] [bit] NULL,
      [PubblicaAmministrazione] [bit] NOT NULL,
      [TipoVendita] [nvarchar](max) NULL,
      [DescrizioneTipoDocumentoAcquisto] [nvarchar](max) NULL,
      [DescrizioneTipoDocumento] [nvarchar](max) NULL,
      [NumeroFattura] [bigint] NOT NULL,
      [IdFattura] [uniqueidentifier] NULL,
      [Tipo4Fattura] [nvarchar](max) NULL,
      [TipoFattura] [nvarchar](max) NULL,
      [LetteraFattura] [nvarchar](max) NULL,
      [DataFattura] [datetime] NULL,
      [NumeroDocumento] [bigint] NOT NULL,
      [IdDocumentoVendita] [uniqueidentifier] NULL,
      [NumeroRegistrazione] [bigint] NOT NULL,
      [DataRegistrazione] [datetime] NOT NULL,
      [LetteraDocumento] [nvarchar](max) NULL,
      [DescrizioneCausaleContabile] [nvarchar](max) NULL,
      [DataDocumento] [datetime] NOT NULL,
      [DataInizialeStampa] [datetime] NULL,
      [DataFinaleStampa] [datetime] NULL,
      [DataRiferimento] [datetime] NULL,
      [NumeroRiferimento] [bigint] NOT NULL,
      [LetteraRiferimento] [nvarchar](max) NULL,
      [CodiceFornitore] [nvarchar](max) NULL,
      [IdDocumentoAcquisto] [uniqueidentifier] NULL,
      [CodiceClienteOp] [nvarchar](max) NULL,
      [RagioneSocialeClienteOp] [nvarchar](max) NULL,
      [CodiceFornitoreOp] [nvarchar](max) NULL,
      [RagioneSocialeFornitoreOp] [nvarchar](max) NULL,
      [TipoFornitore2] [nvarchar](max) NULL,
      [CodiceCliente] [nvarchar](max) NULL,
      [CodiceDestinazione] [nvarchar](max) NULL,
      [DescrizioneDestinazione] [nvarchar](max) NULL,
      [IndirizzoDestinazione] [nvarchar](max) NULL,
      [FlagFatturato] [bit] NOT NULL,
      [CodiceVettore] [nvarchar](max) NULL,
      [TipoVettore] [nvarchar](max) NULL,
      [CapVettore] [nvarchar](max) NULL,
      [ProvinciaVettore] [nvarchar](max) NULL,
      [TelefonoCliente] [nvarchar](max) NULL,
      [EmailCliente] [nvarchar](max) NULL,
      [DescrizioneVettore] [nvarchar](max) NULL,
      [NomeVettore] [nvarchar](max) NULL,
      [IndirizzoVettore] [nvarchar](max) NULL,
      [ComuneVettore] [nvarchar](max) NULL,
      [PartitaIvaVettore] [nvarchar](max) NULL,
      [TelefonoVettore] [nvarchar](max) NULL,
      [NoteVettore] [nvarchar](max) NULL,
      [NomeAutista] [nvarchar](max) NULL,
      [NumeroTarga] [nvarchar](max) NULL,
      [TelefonoAutista] [nvarchar](max) NULL,
      [IscrizioneAlbo] [nvarchar](max) NULL,
      [DestinazioneCliente] [nvarchar](max) NULL,
      [CodiceModalitaDiPagamento] [nvarchar](max) NULL,
      [DescrizioneModalitaDiPagamento] [nvarchar](max) NULL,
      [RagioneSocialeFornitore] [nvarchar](max) NULL,
      [IndirizzoFornitore] [nvarchar](max) NULL,
      [CapFornitore] [nvarchar](max) NULL,
      [ComuneFornitore] [nvarchar](max) NULL,
      [ProvinciaFornitore] [nvarchar](max) NULL,
      [CodiceFiscaleFornitore] [nvarchar](max) NULL,
      [PartitaIvaFornitore] [nvarchar](max) NULL,
      [RagioneSocialeCliente] [nvarchar](max) NULL,
      [IndirizzoCliente] [nvarchar](max) NULL,
      [CapCliente] [nvarchar](max) NULL,
      [ComuneCliente] [nvarchar](max) NULL,
      [ProvinciaCliente] [nvarchar](max) NULL,
      [CodiceFiscaleCliente] [nvarchar](max) NULL,
      [PartitaIvaCliente] [nvarchar](max) NULL,
      [CodiceCausaleContabile] [nvarchar](max) NULL,
      [IndiceContabile] [nvarchar](max) NULL,
      [CodiceTipoNumerazione] [nvarchar](max) NULL,
      [CodiceProtocollo] [nvarchar](max) NULL,
      [NumeroProtocollo] [bigint] NOT NULL,
      [LetteraProtocollo] [nvarchar](max) NULL,
      [Tipo] [nvarchar](max) NULL,
      [Tipo2] [nvarchar](max) NULL,
      [Tipo3] [nvarchar](max) NULL,
      [GenerazioneDocumentiProduttori] [bit] NOT NULL,
      [ImportazioneAutomatica] [bit] NOT NULL,
      [Tipo4] [nvarchar](max) NULL,
      [TipoSezionale] [nvarchar](max) NULL,
      [Tipo4DocumentoVendita] [nvarchar](max) NULL,
      [Tipo4DocumentoAcquisto] [nvarchar](max) NULL,
      [CodiceCausaleMagazzino] [nvarchar](max) NULL,
      [NotificaSpedizione] [nvarchar](max) NULL,
      [RegistroOperatore] [nvarchar](max) NULL,
      [NumeroSpedizione] [decimal](19, 7) NOT NULL,
      [Totale] [decimal](19, 7) NOT NULL,
      [NumeroImportazione] [int] NOT NULL,
      [DataImportazione] [datetime] NULL,
      [TotaleCasse] [decimal](19, 7) NOT NULL,
      [TotaleMerce] [decimal](19, 7) NOT NULL,
      [TotaleImponibile] [decimal](19, 7) NOT NULL,
      [TotalePedane] [decimal](19, 7) NOT NULL,
      [TotaleIva] [decimal](19, 7) NOT NULL,
      [DataTrasporto] [datetime] NULL,
      [OraTrasporto] [nvarchar](max) NULL,
      [Note2] [nvarchar](max) NULL,
      [Esente] [bit] NOT NULL,
      [CodiceEsenzione] [nvarchar](max) NULL,
      [DescrizioneEsenzione] [nvarchar](max) NULL,
      [ModalitaDiConsegna] [nvarchar](max) NULL,
      [DescrizioneAggiuntiva] [nvarchar](max) NULL,
      [CodiceCauzione] [nvarchar](max) NULL,
      [AggiornaContabilita] [bit] NOT NULL,
      [AggiornaScadenze] [bit] NOT NULL,
      [VisualizzaRiepilogoScadenze] [bit] NOT NULL,
      [AggiornaProduttore] [bit] NOT NULL,
      [ContoPerDocumento] [nvarchar](max) NULL,
      [Archivio] [nvarchar](max) NULL,
      [CodiceContoContabileAcquisto] [nvarchar](max) NULL,
      [CodiceContoContabile] [nvarchar](max) NULL,
      [CodiceCentroDiCosto] [nvarchar](max) NULL,
      [AggiornaNumerazione] [bit] NOT NULL,
      [TabellaContiPerDocumento] [nvarchar](max) NULL,
      [DescrizioneIva] [nvarchar](max) NULL,
      [CodiceIva] [nvarchar](max) NULL,
      [IvaDocumento] [bit] NOT NULL,
      [AliquotaIva] [decimal](19, 7) NOT NULL,
      [CodiceRegistroIva] [nvarchar](max) NULL,
      [CodiceAttivita] [nvarchar](max) NULL,
      [Preso] [bit] NOT NULL,
      [CodiceListino] [nvarchar](max) NULL,
      [PercentualeSconto1] [decimal](19, 7) NOT NULL,
      [PercentualeSconto2] [decimal](19, 7) NOT NULL,
      [PercentualeSconto3] [decimal](19, 7) NOT NULL,
      [PercentualeProvvigione] [decimal](19, 7) NOT NULL,
      [ProvvigioneSuCasse] [bit] NOT NULL,
      [Competenze] [decimal](19, 7) NOT NULL,
      [Facchinaggio] [decimal](19, 7) NOT NULL,
      [Commissioni] [decimal](19, 7) NOT NULL,
      [Sconti] [decimal](19, 7) NOT NULL,
      [Omaggi] [decimal](19, 7) NOT NULL,
      [Arrotondamento] [decimal](19, 7) NOT NULL,
      [ContoContabileCompetenze] [nvarchar](max) NULL,
      [CodiceIvaCompetenze] [nvarchar](max) NULL,
      [AliquotaIvaCompetenze] [decimal](19, 7) NOT NULL,
      [ContoContabileFacchinaggio] [nvarchar](max) NULL,
      [CodiceIvaFacchinaggio] [nvarchar](max) NULL,
      [AliquotaIvaFacchinaggio] [decimal](19, 7) NOT NULL,
      [ContoContabileCommissioni] [nvarchar](max) NULL,
      [CodiceIvaCommissioni] [nvarchar](max) NULL,
      [AliquotaIvaCommissioni] [decimal](19, 7) NOT NULL,
      [ContoContabileSconti] [nvarchar](max) NULL,
      [CodiceIvaSconti] [nvarchar](max) NULL,
      [AliquotaIvaSconti] [decimal](19, 7) NOT NULL,
      [ContoContabileOmaggi] [nvarchar](max) NULL,
      [CodiceIvaOmaggi] [nvarchar](max) NULL,
      [AliquotaIvaOmaggi] [decimal](19, 7) NOT NULL,
      [DescrizioneContoCompetenze] [nvarchar](max) NULL,
      [DescrizioneContoFacchinaggio] [nvarchar](max) NULL,
      [DescrizioneContoCommissioni] [nvarchar](max) NULL,
      [DescrizioneContoSconti] [nvarchar](max) NULL,
      [DescrizioneContoOmaggi] [nvarchar](max) NULL,
      [DescrizioneRegistroIva] [nvarchar](max) NULL,
      [DescrizioneAttivita] [nvarchar](max) NULL,
      [CodiceSezionaleRegistroIva] [nvarchar](max) NULL,
      [DescrizioneSezionaleRegistroIva] [nvarchar](max) NULL,
      [CodiceBancaAppoggio] [nvarchar](max) NULL,
      [DescrizioneBancaAppoggio] [nvarchar](max) NULL,
      [IndirizzoBancaAppoggio] [nvarchar](max) NULL,
      [CapBancaAppoggio] [nvarchar](max) NULL,
      [ComuneBancaAppoggio] [nvarchar](max) NULL,
      [ProvinciaBancaAppoggio] [nvarchar](max) NULL,
      [IbanBancaAppoggio] [nvarchar](max) NULL,
      [CodiceCausaleTrasporto] [nvarchar](max) NULL,
      [DescrizioneCausaleTrasporto] [nvarchar](max) NULL,
      [CodiceModalitaConsegna] [nvarchar](max) NULL,
      [DescrizioneModalitaConsegna] [nvarchar](max) NULL,
      [RiferimentoOrdine] [nvarchar](max) NULL,
      [Note] [nvarchar](max) NULL,
      [AspettoEsterioreBeni] [nvarchar](max) NULL,
      [ImportoPagato] [decimal](19, 7) NOT NULL,
      [ImportoDaPagare] [decimal](19, 7) NOT NULL,
      [SaldoPrecedente] [decimal](19, 7) NOT NULL,
      [PathXmlPA] [nvarchar](max) NULL,
      [GuidEmail] [uniqueidentifier] NULL,
      [NumeroRecord] [int] IDENTITY(1,1) NOT NULL,
      [NumeroRiga] [int] NOT NULL,
      [DataCreazione] [datetime] NOT NULL,
      [DataModifica] [datetime] NOT NULL,
      [UsernameLogin] [nvarchar](max) NULL,
      [DatabaseLogin] [nvarchar](max) NULL,
      [NomePcLogin] [nvarchar](max) NULL,
      [CodiceDittaAssociata] [nvarchar](max) NULL,
      [RagioneSocialeDittaAssociata] [nvarchar](max) NULL,
      [Codice] [nvarchar](max) NULL,
      [DescrizioneCausaleMagazzino] [nvarchar](max) NULL,
      [CodiceMagazzino] [nvarchar](max) NULL,
      [DescrizioneMagazzino] [nvarchar](max) NULL,
      [NotificaDiSpedizioneDitta] [nvarchar](max) NULL,
      [RagioneSocialeDestinazione] [nvarchar](max) NULL,
      [CapDestinazione] [nvarchar](max) NULL,
      [ProvinciaDestinazione] [nvarchar](max) NULL,
      [ComuneDestinazione] [nvarchar](max) NULL,
      [CodiceFiscaleDestinazione] [nvarchar](max) NULL,
      [PartitaIvaDestinazione] [nvarchar](max) NULL,
      [DescrizioneCertificazioneProduzione] [nvarchar](max) NULL,
      [DataScadenzaCertificazioneProduzione] [datetime] NULL,
      [BancaFornitore] [nvarchar](max) NULL,
      [IbanFornitore] [nvarchar](max) NULL,
      [BancaDittaAssociata] [nvarchar](max) NULL,
      [IbanDittaAssociata] [nvarchar](max) NULL,
      [NoteCliente] [nvarchar](max) NULL,
      [DichiarazioneIntentoCliente] [nvarchar](max) NULL,
      [DataInizioIntento] [datetime] NULL,
      [DataFineIntento] [datetime] NULL,
      [DescrizioneTipoDocumentoSuStampa] [nvarchar](max) NULL,
      [CodiceBancaDittaAssociata] [nvarchar](max) NULL,
      [DescrizioneBancaDittaAssociata] [nvarchar](max) NULL,
      [VenditaBanco] [bit] NOT NULL,
      [RicezioneMerce] [bit] NOT NULL,
      [SwiftDittaAssociata] [nvarchar](max) NULL,
      [SwiftBancaAppoggio] [nvarchar](max) NULL,
      [IndirizzoOperativaFornitore] [nvarchar](max) NULL,
      [CapOperativaFornitore] [nvarchar](max) NULL,
      [ComuneOperativaFornitore] [nvarchar](max) NULL,
      [ProvinciaOperativaFornitore] [nvarchar](max) NULL,
      [IndirizzoClienteOp] [nvarchar](max) NULL,
      [CapClienteOp] [nvarchar](max) NULL,
      [ComuneClienteOp] [nvarchar](max) NULL,
      [ProvinciaClienteOp] [nvarchar](max) NULL,
      [PartitaIvaClienteOp] [nvarchar](max) NULL,
      [CodiceFiscaleClienteOp] [nvarchar](max) NULL,
      [ComuneDittaAssociata] [nvarchar](max) NULL,
      [ProvinciaDittaAssociata] [nvarchar](max) NULL,
      [IndirizzoDittaAssociata] [nvarchar](max) NULL,
      [PartitaIvaDittaAssociata] [nvarchar](max) NULL,
      [CodiceFiscaleDittaAssociata] [nvarchar](max) NULL,
      [CapDittaAssociata] [nvarchar](max) NULL,
      [NumeroDocumentoClienteOrdine] [bigint] NOT NULL,
      [DataDocumentoClienteOrdine] [datetime] NULL,
      [DataConsegnaOrdine] [datetime] NULL,
      [DataPartenzaOrdine] [datetime] NULL,
      [CodiceModalitaDiPagamento2] [nvarchar](max) NULL,
      [DescrizioneModalitaDiPagamento2] [nvarchar](max) NULL,
      [CodiceBancaAppoggio2] [nvarchar](max) NULL,
      [DescrizioneBancaAppoggio2] [nvarchar](max) NULL,
      [IndirizzoBancaAppoggio2] [nvarchar](max) NULL,
      [CapBancaAppoggio2] [nvarchar](max) NULL,
      [ComuneBancaAppoggio2] [nvarchar](max) NULL,
      [ProvinciaBancaAppoggio2] [nvarchar](max) NULL,
      [IbanBancaAppoggio2] [nvarchar](max) NULL,
      [SwiftBancaAppoggio2] [nvarchar](max) NULL,
      [IdMovimentoRivalsa] [uniqueidentifier] NULL,
      [DataConsegna] [datetime] NULL,
      [DataPartenza] [datetime] NULL,
      [DataDocumentoCliente] [datetime] NULL,
      [NumeroDocumentoCliente] [bigint] NOT NULL,
      [EmailDittaInviata] [nvarchar](max) NULL,
      [StatoEmail] [nvarchar](max) NULL,
      [ColoreStatoEmail] [nvarchar](max) NULL,
      [EmailFornitore] [nvarchar](max) NULL,
      [EmailClienteInviata] [nvarchar](max) NULL,
      [EmailFornitoreInviata] [nvarchar](max) NULL,
      [CodiceStatoOrdine] [int] NOT NULL,
      [CodiceStatoFornitore] [nvarchar](max) NULL,
      [CodiceStatoCliente] [nvarchar](max) NULL,
      [CodiceStatoClienteOp] [nvarchar](max) NULL,
      [CodiceStatoFornitoreOp] [nvarchar](max) NULL,
      [DescrizioneNumeroProtocollo] [nvarchar](max) NULL,
      [DataPrevistaProduzione] [datetime] NULL,
      [GenerazioneDocumentiProduttori2] [bit] NOT NULL,
      [AggiornaProduttore2] [bit] NOT NULL,
      [IdOrdineLavoro] [uniqueidentifier] NULL,
      [NumeroOrdineLavoro] [bigint] NOT NULL,
      [LetteraOrdineLavoro] [nvarchar](max) NULL,
      [DataOrdineLavoro] [datetime] NULL,
      [TipoContoCompetenze] [nvarchar](max) NULL,
      [DescrizioneIvaCompetenze] [nvarchar](max) NULL,
      [TipoContoFacchinaggio] [nvarchar](max) NULL,
      [DescrizioneIvaFacchinaggio] [nvarchar](max) NULL,
      [TipoContoCommissioni] [nvarchar](max) NULL,
      [DescrizioneIvaCommissioni] [nvarchar](max) NULL,
      [TipoContoSconti] [nvarchar](max) NULL,
      [DescrizioneIvaSconti] [nvarchar](max) NULL,
      [TipoContoOmaggi] [nvarchar](max) NULL,
      [DescrizioneIvaOmaggi] [nvarchar](max) NULL,
      [RagioneSocialeCliente2] [nvarchar](max) NULL,
      [RagioneSocialeDestinazione2] [nvarchar](max) NULL,
      [ImportoCasseCauzione] [decimal](19, 7) NOT NULL,
      [ImportoCasseRendere] [decimal](19, 7) NOT NULL,
      [ImportoCassePagamentoCliente] [decimal](19, 7) NOT NULL,
      [NumeroTelefonoDestinazione] [nvarchar](max) NULL,
      [EmailDestinazione] [nvarchar](max) NULL,
      [TotaleColli] [int] NOT NULL,
      [TotaleNetto] [decimal](19, 7) NOT NULL,
      [NazioneDestinazione] [nvarchar](max) NULL,
      [RagioneSocialeDestinazioneSL] [nvarchar](max) NULL,
      [DescrizioneDestinazioneSL] [nvarchar](max) NULL,
      [IndirizzoDestinazioneSL] [nvarchar](max) NULL,
      [CapDestinazioneSL] [nvarchar](max) NULL,
      [ProvinciaDestinazioneSL] [nvarchar](max) NULL,
      [ComuneDestinazioneSL] [nvarchar](max) NULL,
      [CodiceFiscaleDestinazioneSL] [nvarchar](max) NULL,
      [NazioneDestinazioneSL] [nvarchar](max) NULL,
      [PartitaIvaDestinazioneSL] [nvarchar](max) NULL,
      [NumeroTelefonoDestinazioneSL] [nvarchar](max) NULL,
      [EmailDestinazioneSL] [nvarchar](max) NULL,
      [TipoDocumentoOp] [nvarchar](max) NULL,
      [DescrizioneTipoDocumentoVendita] [nvarchar](max) NULL,
      [IdDocumentoOp] [uniqueidentifier] NULL,
      [NumeroTelefonoDestinazioneOp] [nvarchar](max) NULL,
      [EmailDestinazioneOp] [nvarchar](max) NULL,
      [CodiceDestinazioneOp] [nvarchar](max) NULL,
      [RagioneSocialeDestinazioneOp] [nvarchar](max) NULL,
      [RagioneSocialeDestinazione2Op] [nvarchar](max) NULL,
      [DescrizioneDestinazioneOp] [nvarchar](max) NULL,
      [IndirizzoDestinazioneOp] [nvarchar](max) NULL,
      [CapDestinazioneOp] [nvarchar](max) NULL,
      [ProvinciaDestinazioneOp] [nvarchar](max) NULL,
      [ComuneDestinazioneOp] [nvarchar](max) NULL,
      [CodiceFiscaleDestinazioneOp] [nvarchar](max) NULL,
      [NazioneDestinazioneOp] [nvarchar](max) NULL,
      [PartitaIvaDestinazioneOp] [nvarchar](max) NULL,
      [RagioneSocialeCliente2Op] [nvarchar](max) NULL,
      [NoteClienteOp] [nvarchar](max) NULL,
      [Tipo4DocumentoOp] [nvarchar](max) NULL,
      [CodiceModalitaDiPagamentoOp] [nvarchar](max) NULL,
      [DescrizioneModalitaDiPagamentoOp] [nvarchar](max) NULL,
      [CodiceBancaAppoggioOp] [nvarchar](max) NULL,
      [DescrizioneBancaAppoggioOp] [nvarchar](max) NULL,
      [IbanBancaAppoggioOp] [nvarchar](max) NULL,
      [SwiftBancaAppoggioOp] [nvarchar](max) NULL,
      [CodiceModalitaConsegnaOp] [nvarchar](max) NULL,
      [DescrizioneModalitaConsegnaOp] [nvarchar](max) NULL,
      [DataConclusionePrevista] [datetime] NULL,
      [CommentoInterno] [nvarchar](max) NULL,
      [PathAllegati] [nvarchar](max) NULL,
      [DataRiferimentoAcquisto] [datetime] NULL,
      [IdDocumentoRiferimentoAcquisto] [uniqueidentifier] NULL,
      [NumeroRiferimentoAcquisto] [bigint] NOT NULL,
      [Tipo4RiferimentoAcquisto] [nvarchar](max) NULL,
      [LetteraRiferimentoAcquisto] [nvarchar](max) NULL,
      [TipoVenditaRiferimentoAcquisto] [nvarchar](max) NULL,
      [DataRiferimentoVendita] [datetime] NULL,
      [IdDocumentoRiferimentoVendita] [uniqueidentifier] NULL,
      [NumeroRiferimentoVendita] [bigint] NOT NULL,
      [Tipo4RiferimentoVendita] [nvarchar](max) NULL,
      [LetteraRiferimentoVendita] [nvarchar](max) NULL,
      [TipoVenditaRiferimentoVendita] [nvarchar](max) NULL,
      [PresoOrdineFornitore] [bit] NOT NULL,
      [IdRiferimentoOrdineFornitore] [uniqueidentifier] NULL,
      [NumeroRiferimentoOrdineFornitore] [bigint] NOT NULL,
      [Tipo4RiferimentoOrdineFornitore] [nvarchar](max) NULL,
      [LetteraRiferimentoOrdineFornitore] [nvarchar](max) NULL,
      [TipoVenditaRiferimentoOrdineFornitore] [nvarchar](max) NULL,
      [DataRiferimentoOrdineFornitore] [datetime] NULL,
      [IdRiferimentoOrdineCliente] [uniqueidentifier] NULL,
      [NumeroRiferimentoOrdineCliente] [bigint] NOT NULL,
      [Tipo4RiferimentoOrdineCliente] [nvarchar](max) NULL,
      [LetteraRiferimentoOrdineCliente] [nvarchar](max) NULL)



    • Modificato brux88 sabato 25 febbraio 2017 09:09
    venerdì 24 febbraio 2017 16:08

Risposte

  • Salve Brux88

    sì, le dimensioni dei nvarchar sono a 0 se vuoti e infatti la tabella viene creata, il messaggio tuttavia ti avvisa che potresti superare il limite di 8060 byte per la pagina principale perché ogni nvarchar(max) se valorizzato occupa 24 byte per il puntatore che si aggiungono alla somma dei byte nei campi a lunghezza fissa.

    Qui trovi maggioni info: Dati di overflow della riga che superano 8 KB

    Ciao
    Giorgio Rancati

    sabato 25 febbraio 2017 09:58
    Moderatore

Tutte le risposte

  • Salve Brux88

    sì, le dimensioni dei nvarchar sono a 0 se vuoti e infatti la tabella viene creata, il messaggio tuttavia ti avvisa che potresti superare il limite di 8060 byte per la pagina principale perché ogni nvarchar(max) se valorizzato occupa 24 byte per il puntatore che si aggiungono alla somma dei byte nei campi a lunghezza fissa.

    Qui trovi maggioni info: Dati di overflow della riga che superano 8 KB

    Ciao
    Giorgio Rancati

    sabato 25 febbraio 2017 09:58
    Moderatore
  • Si avevo letto, però non mi è chiaro ancora qualcosa un nvarchar puo contenere fino a 2gbyte di dati, infine siccome ancora si dovranno aggiungere altre colonne qual è la soluzione ideale per evitare questo?
    sabato 25 febbraio 2017 10:03
  • Salve Brux88,

    l'nvarchar(max) può contenere fino a 2gb e occupa 24 byte di indirizzo nella pagina principale.

    A mio avviso la tabella dovrebbe essere normalizzata,

    ad esempio i campi

      [RegistroOperatoriDitta] [nvarchar](max) NULL,
      [RagioneSocialeDitta] [nvarchar](max) NULL,
      [RagioneSocialeAggiuntivaDitta] [nvarchar](max) NULL,
      [IndirizzoDitta] [nvarchar](max) NULL,
      [CapDitta] [nvarchar](max) NULL,
      [ComuneDitta] [nvarchar](max) NULL,
      [ProvinciaDitta] [nvarchar](max) NULL,
      [PartitaIvaDitta] [nvarchar](max) NULL,
      [CodiceFiscaleDitta] [nvarchar](max) NULL,
      [TelefonoDitta] [nvarchar](max) NULL,
      [EmailDitta] [nvarchar](max) NULL,
      [IndirizzoDittaOperativo] [nvarchar](max) NULL,
      [CapDittaOperativo] [nvarchar](max) NULL,
      [ComuneDittaOperativo] [nvarchar](max) NULL,
      [ProvinciaDittaOperativo] [nvarchar](max) NULL,
      [TelefonoDittaOperativo] [nvarchar](max) NULL,
      [EmailDittaOperativo] [nvarchar](max) NULL,

    potrebbero essere sostituiti dal singolo campo campo [Id_Ditta] INT che punta alla tabella ditte che contiene le informazioni della ditta.

    la stessa cosa vale per il cliente la banca il correre, ecc.

    Prova a dare un'occhiata qui: Normalizzazione

    Ciao
    Giorgio Rancati

    sabato 25 febbraio 2017 10:30
    Moderatore
  • Ciao grazie per la risposta, si ho letto e adesso mi documento ma volevo sapere una informazione se io faccio ad esempio 10 fatture avro una tabella datiditta, clienti con 10 righe corrispondenti ad ogni fattura? Oppure devo puntare alle tabelle delle anagrafiche principali? 
    domenica 26 febbraio 2017 07:23
  • Ciao,

    la tabella clienti avrà una riga per ogni cliente, poniamo di avere 2 clienti nella tabella Clienti

    Id  - Nominativo
    1 - Rossi
    2 - Bianchi 

    e 10 fatture nella tabella fatture di cui 7 con Id_Cliente 1 relative a Rossi, 3 con id_Cliente 2 relative a Bianchi

    la stessa cosa vale per le ditte, corrieri, banche ecc.

    ci sono in rete databases di esempio per sql server come Northwind, pubs e AdventureWorks prova a dargli un'occhiata.

    Ciao
    Giorgio Rancati

    domenica 26 febbraio 2017 18:36
    Moderatore
  • buongiorno, si il problema è proprio questo , cerco di spiegarmi meglio.

    se io faccio una fattura con cliente 1 Rossi è ha un indirizzo, poi dopo qualche mese Rossi cambia indirizzo, quindi vado nell'anagrafica di rossi e modifico l'indirizzo, id cliente rimane sempre 1, ma se poi stampo una  fattura vecchia mi deve stampare con l'indirizzo vecchio, perche in quel momento aveva quell'indirizzo per questo non ho normalizzato la tabella e mi sono riportato tutto dietro cosi quella fattura rimarrà cosi a prescindere dalle modifiche che effettuerò nelle anagrafiche dei clienti, ditte,banca etc...

    Il mio problema sta proprio qui... capire come poter normalizzare le tabelle se ho queste necessita... =(

    lunedì 27 febbraio 2017 07:37
  • Probabilmente hai necessita di mantenere uno storico contabile , relativamente anche all'anagrafica , per questo dovresti avere una tabella anagrafica con delle versioni , mi spiego vai a generare un nuovo id per lo stesso cliente con altro indirizzo , poi avrai un campo data validità ad esempio che ti da l'ultimo record aggiornato , ma nello stesso tempo mantieni il rapporto con i vecchi indirizzi se presenti.


    QuirinoS

    • Proposto come risposta Luca Bruno lunedì 27 febbraio 2017 10:17
    lunedì 27 febbraio 2017 09:54
  • Però cosi dovrei gestire il discorso che in anagrafica deve comunque comparire un solo cliente con lo stesso codice cliente e anche quando faccio una nuova fattura nella ricerca se inserisco il codice cliente ( che non corrisponde all 'id) mi deve prendere l'ultimo valido.

    poi un altra cosa con la normalizzazioni del db poi ogni volta che ricerco una fattura dovro fare tanti join quanti saranno le chiavi esterne nel senso se devo stampare la fattura in un report dovro inserire tutti i dati anagrafici del relativo cliente, banca etc... quindi dovro fare i relativi join per potermi prendere i dati 
    lunedì 27 febbraio 2017 10:56