Principale utente con più risposte
[SQL Server] Rallentamento nel salvataggio dati del database

Domanda
-
Buongiorno a tutti, avrei una domanda sperando in una soluzione applicabile al mio problema..
ho un Database SQL Server, dove al suo interno ci sono alcune tabelle in relazione, una a molti, tra loro tramite chiave esterna, ovvero tramite dei campi creati appositamente per poterle mettere in relazione, alcune tabelle hanno più di una relazione, come la tabella Lavorazioni, quindi si parla di:
Tabella Lavorazioni con 41 campi
Tabella Clienti con 30 campi
Tabella manutenzioni con 12 campi
queste sono quelle con maggior numero di campi:
questo per dare un'idea, come si può vedere lavoro sul Visual Basic, come struttura di tabelle utilizzo questo tipo:
CREATE TABLE [dbo].[Table_Lavorazioni] ( [Id_Lavorazione] INT IDENTITY (1, 1) NOT NULL, [CodiceLavorazioni] NVARCHAR (10) NULL, [CodiceCliente] NVARCHAR (10) NULL, [IDPreventivo] NVARCHAR (10) NULL, [IDDisegno] NVARCHAR (10) NULL, [NomeProprietario] NVARCHAR (50) NULL, [CognomeProprietario] NVARCHAR (50) NULL, [IndirizzoProprietario] NVARCHAR (50) NULL, [CivicoProprietario] NVARCHAR (10) NULL, [ComuneProprietario] NVARCHAR (50) NULL, [ProvinciaProprietario] NVARCHAR (2) NULL, [CapProprietario] NVARCHAR (5) NULL, [SettoreProprietario] NVARCHAR (50) NULL, [RagioneSocialeProprietario] NVARCHAR (50) NULL, [IndirizzoRagSocProprietario] NVARCHAR (50) NULL, [CivicoRagSocProprietario] NVARCHAR (10) NULL, [ComuneRagSocProprietario] NVARCHAR (50) NULL, [ProvinciaRagSocProprietario] NVARCHAR (2) NULL, [CapRagSocProprietario] NVARCHAR (5) NULL, [CodFiscaleProprietario] NVARCHAR (16) NULL, [PIvaProprietario] NVARCHAR (11) NULL, [TelefonoProprietario] NVARCHAR (15) NULL, [CellulareProprietario] NVARCHAR (15) NULL, [FaxProprietario] NVARCHAR (15) NULL, [EmailProprietario] NVARCHAR (50) NULL, [SitoProprietario] NVARCHAR (50) NULL, [NoteProprietario] NVARCHAR (500) NULL, [IndirizzoLavoro] NVARCHAR (50) NULL, [CivicoLavoro] NVARCHAR (10) NULL, [ComuneLavoro] NVARCHAR (50) NULL, [ProvinciaLavoro] NVARCHAR (2) NULL, [CapLavoro] NVARCHAR (5) NULL, [TipoFattura] NVARCHAR (50) NULL, [Piano] NVARCHAR (50) NULL, [Interno] NVARCHAR (50) NULL, [Scala] NVARCHAR (50) NULL, [c1] NVARCHAR (50) NULL, [c2] NVARCHAR (50) NULL, [c3] NVARCHAR (50) NULL, [c4] NVARCHAR (50) NULL, [c5] NVARCHAR (50) NULL, PRIMARY KEY CLUSTERED ([Id_Lavorazione] ASC) );
Qualcuno sa darmi un'indicazione per poter risolvere il problema? , si tratta di un'attesa nel salvataggio dei dati di minimo 5..6 sec.
P.S. c'è chi mi ha detto :
Resta il dubbio che tu estrai non un solo recordo ma un insieme di recordo e da qui il rallentamento.
Come posso fare a verificarlo? come potrebbe accadere una cosa simile...facendo come?
Grazie
- Modificato Guido.G venerdì 22 agosto 2014 07:38 correzione
Risposte
-
Come temevi.. Non ho un problema. Va veloce e non sembra rallentare su nessua operazione.
C'è da capire se non fosse quell'access che sia "bloccato".
Antivirus, antimalware che girano e che monitorizzano quella cartella?
Sinceramente non ho altre cartucce. Sembra proprio un problema legato alla tua macchina.. Non saprei che altro aggiungere.Alessandro Alpi SQL Server MVP
- Contrassegnato come risposta Guido.G mercoledì 3 settembre 2014 16:25
Tutte le risposte
-
Ciao Guido,
a prescindere dal fatto che i tipi di dato nvarchar per campi codice li vedo un tantino fuori luogo (ti servono proprio unicode? e sono tutte stringhe? fai attenzione perché un campo sovradimensionato rischia di farti aumentare anche le operazioni di IO) quello che non capisco è che operazioni fai e di quali operazioni parliamo in quei 5/6 secondi.
Se si tratta di una singola INSERT c'è da capire ad esempio se il tuo database è in AUTO CLOSE (quindi il tempo per connettersi ed aprire il database deve essere aggiunto a quello della effettiva insert). Se si tratta di più insert in un batch c'è da capire quante sono e come vengono fatte. Potrebbe poi esserci un ciclo applicativo che considera altre cose, per di più anche sotto transazione.
Riesci ad essere più dettagliato? Puoi passarci parte del codice che viene eseguito durante l'operazione di salvataggio? Che versione ed edizione di SQL Server stai utilizzando (è un CE o un LocalDB)?
grazie
Alessandro Alpi SQL Server MVP
-
Buongiorno Alessandro,per me non sarà facile darti tante informazioni, perchè sono auto didatta e quindi con molte lacune...cercherò comunque di darti più informazioni possibili e se qualcosa non so come verificarlo...se puoi dirmi come fare ti darò ancora altre informazioni...per iniziare, secondo quello che mi chiedi:
1) ti servono proprio unicode? e sono tutte stringhe?
-Se non sbaglio l'unicode comprende tutti i caratteri anche quelli stranieri di altre lingue, ed effettivamente...no non mi servono, il progetto è solo per me in italiano.
- Diciamo che molti dei campi sono stringhe ma anche altri non lo sono. (Ho impostato tutto in questo modo pensando che non facesse tutta questa differenza...da profano....mi sembra di capire che innanzitutto dovrei sistemare queste cose,utilizzare i campi giusti...quali mi consiglieresti per campi testo, numero? ho visto che c'è molte possibilità considerando che non è conosciuta la lunghezza di alcuni campi.
2) quello che non capisco è che operazioni fai e di quali operazioni parliamo in quei 5/6 secondi.
-Intendo che creo un record, immetto i dati nei campi e dal momento che salvo i dati devo attendere minimo 5 ..6 sec prima che l'applicazione abbia finito di fare le operazioni.
3) database è in AUTO CLOSE
- Per quanto riguarda se il database è di questo tipo ...non saprei se mi dai un indizio come poterlo riscontrare ti do anche questa notizia... se intendi le righe nella parte Load del form:
Private Sub frm_Lavorazione_Load(sender As Object, e As EventArgs) Handles MyBase.Load 'TODO: questa riga di codice carica i dati nella tabella 'Database_PreventiviDataSet.Table_Preventivi'. È possibile spostarla o rimuoverla se necessario. Me.Table_PreventiviTableAdapter.Fill(Me.Database_PreventiviDataSet.Table_Preventivi) 'TODO: questa riga di codice carica i dati nella tabella 'Database_GestioneDataSet.Table_Manutenzioni'. È possibile spostarla o rimuoverla se necessario. Me.Table_ManutenzioniTableAdapter.Fill(Me.Database_GestioneDataSet.Table_Manutenzioni) 'TODO: questa riga di codice carica i dati nella tabella 'Database_ConfigurazioneDataSet.Table_Fornitori'. È possibile spostarla o rimuoverla se necessario. Me.Table_FornitoriTableAdapter.Fill(Me.Database_ConfigurazioneDataSet.Table_Fornitori) 'TODO: questa riga di codice carica i dati nella tabella 'Database_ConfigurazioneDataSet.Table_Iva'. È possibile spostarla o rimuoverla se necessario. Me.Table_IvaTableAdapter.Fill(Me.Database_ConfigurazioneDataSet.Table_Iva) 'TODO: questa riga di codice carica i dati nella tabella 'Database_GestioneDataSet.Table_MaterialiUtilizzati'. È possibile spostarla o rimuoverla se necessario. Me.Table_MaterialiUtilizzatiTableAdapter.Fill(Me.Database_GestioneDataSet.Table_MaterialiUtilizzati) 'TODO: questa riga di codice carica i dati nella tabella 'Database_GestioneDataSet.Table_Lavorazioni'. È possibile spostarla o rimuoverla se necessario. Me.Table_LavorazioniTableAdapter.Fill(Me.Database_GestioneDataSet.Table_Lavorazioni) 'TODO: questa riga di codice carica i dati nella tabella 'DataBase_GestioneDataSet.Table_Clienti'. È possibile spostarla o rimuoverla se necessario. Me.Table_ClientiTableAdapter.Fill(Me.Database_GestioneDataSet.Table_Clienti) frm_Gestione.Principale_ToolStripStatusLabel.Text = "---" 'Predispone il testo della toolstrip End Sub
3) Se si tratta di più insert in un batch c'è da capire quante sono e come vengono fatte
- Su questo ...mi dispiace ma nonn ho capito cosa vuoi dire :-(
4) Puoi passarci parte del codice che viene eseguito durante l'operazione di salvataggio?
- La routine di salvataggio di una parte è questa:
Private Sub Clienti_SalvaRecord_Click(sender As Object, e As EventArgs) Handles Clienti_SalvaRecord.Click '---- azzeramento barra inferiore ------------------------------------------ frm_Gestione.azzeramento_BarraNote() '--------------------------------------------------------------------------- '---- immagazzina la posizione corrente del BindingNavigator Clienti-------- Dim rec As Integer = CInt(Me.Clienti_BindingNavigatorPositionItem.Text) '-------------------------------------------------------------------------------- 'inizia gestione eccezioni e calcolo 'Try '-------------------- Controlla la presenza dei campi codice ----------------------------- If CodiceCliente_Clienti.Text = "" And ID_Clienti_Clienti.Text = "" Then ' se non sono presenti dati. '---------------ROUTINE DI CALCOLO CODICE-------------------------------------------- 'verifica la presenza dei campi nome e cognome e civico If NomeClienteTextBox.Text <> "" And CognomeClienteTextBox.Text <> "" And CivicoClienteTextBox.Text <> "" Then ' se sono presenti dati dei campi nome e cognome e civico effettua il calcolo del codice cliente. '----- Prepara le variabili del calcolo del codice Clienti se sono presenti i campi nome/cognome/civico id = Clienti_BindingNavigatorPositionItem.Text campo1 = NomeClienteTextBox.Text.Substring(1, 1) campo2 = CognomeClienteTextBox.Text.Substring(1, 1) campo3 = CivicoClienteTextBox.Text.Substring(0, 1) 'scrive e calcola il codice Me.ID_Clienti_Clienti.Text = (id & campo1 & campo2 & campo3).ToUpper 'ToUpper converte in caratteri maiuscoli Me.CodiceCliente_Clienti.Text = (id & campo1 & campo2 & campo3).ToUpper 'ToUpper converte in caratteri maiuscoli ' se non sono presenti dati dei campi nome e cognome e civico ' ma sono presenti dati nei campi Ragione sociale, Indirizzo Ragione Sociale e Civico Ragione Sociale. ElseIf RagioneSocialeClienteTextBox.Text <> "" And IndirizzoRagSocClienteTextBox.Text <> "" And CivicoRagSocClienteTextBox.Text <> "" Then 'prepara le variabili del calcolo del codice Clienti se 'non sono presenti i campi nome/cognome/civico 'prende i valori su Rag.Soc/Ind.R.S./Civico Rag.Soc. 'toglie eventuali punti "." Dim RSP As String = RagioneSocialeClienteTextBox.Text.Replace(".", "") 'Toglie eventuali spazi" " Dim RSPS As String = RSP.Replace(" ", "") 'estrae dalla Ragione soc. il valore campo1 = RSPS.Substring(1, 1) 'RS 'toglie eventuali punti "." Dim IRSP As String = IndirizzoRagSocClienteTextBox.Text.Replace(".", "") 'Toglie eventuali spazi" " Dim IRSPS As String = IRSP.Replace(" ", "") campo2 = IRSPS.Substring(2, 1) campo3 = CivicoRagSocClienteTextBox.Text.Substring(0, 1) 'civico id = Clienti_BindingNavigatorPositionItem.Text 'scrive e compone il codice Me.ID_Clienti_Clienti.Text = (id & campo1 & campo2 & campo3).ToUpper Me.CodiceCliente_Clienti.Text = (id & campo1 & campo2 & campo3).ToUpper Else MessageBox.Show("Riscontratala mancanza di uno o più campi" & (Chr(13)) & " vuoti indispensabili per genrare il codice del record." & (Chr(13)) & "Verificare....", "ATTENZIONE!! SALVATAGGIO INTERROTTO.", MessageBoxButtons.OK, MessageBoxIcon.Information) 'colora i campi importanti Me.NomeClienteTextBox.BackColor = Color.Beige Me.CognomeClienteTextBox.BackColor = Color.Beige Me.IndirizzoClienteTextBox.BackColor = Color.Beige Me.CivicoClienteTextBox.BackColor = Color.Beige Me.RagioneSocialeClienteTextBox.BackColor = Color.Beige Me.IndirizzoRagSocClienteTextBox.BackColor = Color.Beige Me.CivicoRagSocClienteTextBox.BackColor = Color.Beige Exit Sub End If End If '------------------------------------------------------------------------------ frm_Gestione.azzeramento_BarraNote() 'azzeramento ToolStripProgressBar Me.Validate() Me.Table_ClientiBindingSource.EndEdit() Me.TableAdapterManager.UpdateAll(Me.Database_GestioneDataSet) Me.Table_ClientiTableAdapter.Fill(Me.Database_GestioneDataSet.Table_Clienti) 'mantiene la barra sul record corrente Me.Table_ClientiBindingSource.Position = rec - 1 NomeClienteTextBox.Focus() frm_Gestione.barra_progresso_continua() frm_Gestione.Principale_ToolStripStatusLabel.Text = "Dati salvati nel database CODE:.. " & Me.CodiceCliente_Clienti.Text 'frm_Gestione.Principale_ToolStripStatusLabel1.Text = Me.CodiceCliente_Clienti.Text disabilita_campi_code() Me.NomeClienteTextBox.Focus() Me.Clienti_SalvaRecord.Enabled = False '--- icona salva clienti Me.Clienti_Elimina_ToolStripButton.Enabled = True Me.NomeClienteTextBox.BackColor = Color.White Me.CognomeClienteTextBox.BackColor = Color.White Me.IndirizzoClienteTextBox.BackColor = Color.White Me.CivicoClienteTextBox.BackColor = Color.White Me.RagioneSocialeClienteTextBox.BackColor = Color.White Me.CivicoRagSocClienteTextBox.BackColor = Color.White Me.IndirizzoRagSocClienteTextBox.BackColor = Color.White End Sub
5) Che versione ed edizione di SQL Server stai utilizzando (è un CE o un LocalDB)?
- Per quanto riguarda la versione di SQL...non so come fare per fartelo sapere, mentre per il tipo di database, questa è la stinga di connessione e se non sbagli è .."LocalDB"
Data Source=(LocalDB)\v11.0;AttachDbFilename="C:\Users\utente\Documents\Visual Studio 2013\Projects\GestionaleDitta\GestionaleDitta\Database_FatturazioneFattura.mdf";Integrated Security=True;Connect Timeout=30
Credo d'aver risposto a tutto ...o quasi....attendo la tua sentenza.....
Grazie
Guido
P.s.
Nel tentativo di modificare il tipo di carattere nelle query ho letto questo:
Nota importante Importante I tipi di dati ntext, text e image verranno rimossi a partire da una delle prossime
versioni di Microsoft SQL Server. Evitare di utilizzare questi tipi di dati in un
nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni
che attualmente li utilizzano.
Utilizzare nvarchar(max), varchar(max) e varbinary(max) in alternativa.
http://msdn.microsoft.com/it-it/library/ms187993.aspx
Ho modificato i campi delle tabelle per vedere se c'è qualche cambiamento:
CREATE TABLE [dbo].[Table_Lavorazioni] ( [Id_Lavorazione] INT IDENTITY (1, 1) NOT NULL, [CodiceLavorazioni] VARCHAR (10) NULL, [CodiceCliente] VARCHAR (10) NULL, [IDPreventivo] VARCHAR (10) NULL, [IDDisegno] VARCHAR (10) NULL, [NomeProprietario] VARCHAR (50) NULL, [CognomeProprietario] VARCHAR (50) NULL, [IndirizzoProprietario] VARCHAR (50) NULL, [CivicoProprietario] VARCHAR (10) NULL, [ComuneProprietario] VARCHAR (50) NULL, [ProvinciaProprietario] CHAR (2) NULL, [CapProprietario] NUMERIC (5) NULL, [SettoreProprietario] VARCHAR (50) NULL, [RagioneSocialeProprietario] VARCHAR (50) NULL, [IndirizzoRagSocProprietario] VARCHAR (50) NULL, [CivicoRagSocProprietario] VARCHAR (10) NULL, [ComuneRagSocProprietario] VARCHAR (50) NULL, [ProvinciaRagSocProprietario] CHAR (2) NULL, [CapRagSocProprietario] NUMERIC (5) NULL, [CodFiscaleProprietario] NUMERIC (16) NULL, [PIvaProprietario] NUMERIC (11) NULL, [TelefonoProprietario] NUMERIC (15) NULL, [CellulareProprietario] NUMERIC (15) NULL, [FaxProprietario] NUMERIC (15) NULL, [EmailProprietario] VARCHAR (50) NULL, [SitoProprietario] VARCHAR (50) NULL, [NoteProprietario] VARCHAR (500) NULL, [IndirizzoLavoro] VARCHAR (50) NULL, [CivicoLavoro] VARCHAR (10) NULL, [ComuneLavoro] VARCHAR (50) NULL, [ProvinciaLavoro] CHAR (2) NULL, [CapLavoro] NUMERIC (5) NULL, [TipoFattura] VARCHAR (50) NULL, [Piano] VARCHAR (5) NULL, [Interno] VARCHAR (5) NULL, [Scala] VARCHAR (5) NULL, [c1] VARCHAR (50) NULL, [c2] VARCHAR (50) NULL, [c3] VARCHAR (50) NULL, [c4] VARCHAR (50) NULL, [c5] VARCHAR (50) NULL, PRIMARY KEY CLUSTERED ([Id_Lavorazione] ASC) );
ma non c'è un cambiamento apprezzabile...
Ho effettuato un controllo...ho notato che quando l'esecuzione passa
Me.Validate() Me.Table_LavorazioniBindingSource.EndEdit() ---> Me.TableAdapterManager.UpdateAll(Me.Database_GestioneDataSet)
sul punto evidenziato qui si genera il rallentamento, quindi penso che sia proprio sul database.....o le tabelle....non so..
-------------------------------------------------------------------------------------------------------------------------------
Ho fatto una seconda prova, ho provato a modificare il codice di salvataggio:
Me.Validate() Me.Table_LavorazioniBindingSource.EndEdit() 'Me.TableAdapterManager.UpdateAll(Me.Database_GestioneDataSet) Me.Table_LavorazioniTableAdapter.Update(Me.Database_GestioneDataSet.Table_Lavorazioni)
funziona il salvataggio...ma i tempi sono gli stessi....
- Modificato Guido.G domenica 24 agosto 2014 13:52 correzione
-
-
Diciamo che molti dei campi sono stringhe ma anche altri non lo sono. (Ho impostato tutto in questo modo pensando che non facesse tutta questa differenza...da profano....mi sembra di capire che innanzitutto dovrei sistemare queste cose,utilizzare i campi giusti...quali mi consiglieresti per campi testo, numero? ho visto che c'è molte possibilità considerando che non è conosciuta la lunghezza di alcuni campi.
dipende molto da quello che hai come modello. Fondamentalmente il principio è scegliere il tipo di dato più piccolo per il valore più grande della colonna. Ad esempio, un campo sull'età di una persona non sarà mai intero a 4 byte (per sfortuna :) ) ma ti basterà un tinyint (che ne occupa uno solo). Per un campo di cui conosci la lunghezza sempre ed essa è sempre la stessa, userai char e non la sua forma variabile, perchè risparmi sia l'occupazione in più per l'offset sia la cpu per l'algoritmo di valutazione della lunghezza effettiva del campo. I codici di solito possono essere numerici (surrogati), così ti eviti l'occupazione delle stringhe superiori di 4 byte (per certi codici di lookup a volte ti basta un byte).
Diciamo che dimensionare bene ti consente di contenere le operazioni di I/O, che sono uno dei punti cruciali per i principali problemi di performance.
-Intendo che creo un record, immetto i dati nei campi e dal momento che salvo i dati devo attendere minimo 5 ..6 sec prima che l'applicazione abbia finito di fare le operazioni.
Ok quindi parliamo solo di un record.
3) database è in AUTO CLOSE
- Per quanto riguarda se il database è di questo tipo ...non saprei se mi dai un indizio come poterlo riscontrare ti do anche questa notizia...
con questa:
SELECT DATABASEPROPERTYEX('Nome tuo db','IsAutoClose')
- La routine di salvataggio di una parte è questa:
Io vedo solo funzioni che spostano la barra. Quindi credo che sia il salvataggio solamente.
- Per quanto riguarda la versione di SQL...non so come fare per fartelo sapere, mentre per il tipo di database, questa è la stinga di connessione e se non sbagli è .."LocalDB"
Ok, di solito quel db ha un timeout per cui fa auto shutdown. Se lanci l'inserimento più volte, vanno tutte lente o solo la prima? Per più volte, intendo più volte nella stessa routine.
Nel tentativo di modificare il tipo di carattere nelle query ho letto questo:
Nota importante Importante I tipi di dati ntext, text e image verranno rimossi a partire da una delle prossime
versioni di Microsoft SQL Server. Evitare di utilizzare questi tipi di dati in un
nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni
che attualmente li utilizzano.
Utilizzare nvarchar(max), varchar(max) e varbinary(max) in alternativa.
http://msdn.microsoft.com/it-it/library/ms187993.aspx
ma non c'è un cambiamento apprezzabile...
Ho effettuato un controllo...ho notato che quando l'esecuzione passa
Me.Validate() Me.Table_LavorazioniBindingSource.EndEdit() ---> Me.TableAdapterManager.UpdateAll(Me.Database_GestioneDataSet)
sul punto evidenziato qui si genera il rallentamento, quindi penso che sia proprio sul database.....o le tabelle....non so..
-------------------------------------------------------------------------------------------------------------------------------
Ho fatto una seconda prova, ho provato a modificare il codice di salvataggio:
Me.Validate() Me.Table_LavorazioniBindingSource.EndEdit() 'Me.TableAdapterManager.UpdateAll(Me.Database_GestioneDataSet) Me.Table_LavorazioniTableAdapter.Update(Me.Database_GestioneDataSet.Table_Lavorazioni)
funziona il salvataggio...ma i tempi sono gli stessi....
Alessandro Alpi SQL Server MVP
- Proposto come risposta Edoardo BenussiMVP, Moderator mercoledì 27 agosto 2014 13:22
-
Ciao Alessandro, dunque:
- I salvataggi dei record sono tutti lenti, se salvo nella stessa tabella 5 record uno dopo l'altro tutti impiegano lo stesso tempo per il salvataggio.
- Per fare un piccolo progetto non ci sarebbe problemi...sapessi come farlo con ADO.NET....
e vorrei comunque chiederti una cosa...non vorrei creare più confusione.. nelle tabelle del progetto avevo fatto le quesry guidate per inserimento eliminazione e il salvataggio dei dati, nelle varie prove che ho fatto ho provato ad eliminarle queste query....aggiornato il database.......e funziona anche senza le query....perchè?
Per creare il database uso la forma guidata e se non sbagli non ho la possibilità di scegliere ADO, come origine dati mi da solo:File di DataBase Microsoft SQL SERVER e Microsoft SQL SERVER ...che sinceramente non so la differenza.
Lo so...sono un caso patetico...
-
Ho fato questo:
Nuovo progetto
da menu -> Progetto ->Nuovo elemento ->Elemento di progetto per la creazione di ADO.NET Entity Data Model
Genera da database ->Origine dati: (file di database Microsoft SQL Server) ->Entity Framework 6.0 -> Fine
Fatto questo è apparsa la sceda:
Model1.edmx [Diagram1]
In esplora database ha creato due connessioni:
ADO_Model1.mdf
ADO_Model1.mdf1
Ho creato due tabelle in ADO_Model1.mdf [table1 e Tabele2]
Su origine dati non appare nulla......
ORA NON SO CHE FARE...... :-(
-
Ciao,
niente, se non sai scrivere con ado.net non possiamo proseguire con quel progetto. Sinceramente non so proprio dirti il perchè a questo punto.
Se vuoi passarmi il progetto con il database posso provarlo, ma di più, se non sai farlo interamente con ado.net non so proprio che fare. Quello che stai facendo è usare entity framework che è ancora un'altra cosa..
Alessandro Alpi SQL Server MVP
-
-
-
-
-
-
-
-
-
- Modificato Guido.G venerdì 29 agosto 2014 11:29
-
Nel pensare al tipo di rallentamento, visto che vibis6...non ha rilevato nessun rallentamento nell'esecuzione del salvataggio nella scheda lavorazioni, mi chiedevo se può dipendere da ciò che ho installato per il visual studio, quindi riporto le informazioni che ho rilevato..
Guido
-
Ciao,
Il progetto non è raggiungibile. Mi spiace.
Alessandro Alpi SQL Server MVP
- Modificato Alessandro AlpiMVP, Moderator lunedì 1 settembre 2014 12:36
-
Ciao Alessandro ho tenuto per molto tempo il progetto in onedrive...pensavo che tu avessi avuto tempo per prenderlo... se vuoi lo rimetterò on line questa sera e domani sera dalle 18 in poi...
Guido
https://onedrive.live.com/redir?resid=3BAE69A7546B6286!157&authkey=!AAE1SZ_X_DtQYJ0&ithint=file%2czip- Modificato Guido.G lunedì 1 settembre 2014 17:41
-
-
-
Come temevi.. Non ho un problema. Va veloce e non sembra rallentare su nessua operazione.
C'è da capire se non fosse quell'access che sia "bloccato".
Antivirus, antimalware che girano e che monitorizzano quella cartella?
Sinceramente non ho altre cartucce. Sembra proprio un problema legato alla tua macchina.. Non saprei che altro aggiungere.Alessandro Alpi SQL Server MVP
- Contrassegnato come risposta Guido.G mercoledì 3 settembre 2014 16:25
-