Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 15 su 15
  1. #11
    Utente di HTML.it
    Registrato dal
    Jun 2002
    Messaggi
    1,120
    si è vero
    pero' ho fatto tabelle divise per ogni reception
    in quanto non voglio assolutamente che si verifichi una sovrapposizione di dati se delle funzioni insert/update venissero lanciate nel medesimo istante

    mi e' capitato in passato
    victor
    ----------------------

  2. #12
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,785
    comunque parte l'accapo come suggerito, invece di

    codice:
    dim lasele as string=" Select * from reception_0 where tessera >="& datainizio2 &" and tessera <="& datafine2 &" "
    lasele=lasele & " union Select * from reception_1 where tessera >="& datainizio2 &" and tessera <="& datafine2 &" "


    puoi scrivere
    codice:
    dim lasele as string=" Select * from reception_0 where tessera >="& datainizio2 &" and tessera <="& datafine2 &" "
    
    lasele += " union Select * from reception_1 where tessera >="& datainizio2 &" and tessera <="& datafine2 &" "
    lasele += " union Select * from reception_2 where tessera >="& datainizio2 &" and tessera <="& datafine2 &" " ...... 
    Ultima modifica di djciko; 27-07-2020 a 09:30

  3. #13
    Quote Originariamente inviata da victor8872 Visualizza il messaggio
    si è vero
    pero' ho fatto tabelle divise per ogni reception
    in quanto non voglio assolutamente che si verifichi una sovrapposizione di dati se delle funzioni insert/update venissero lanciate nel medesimo istante

    mi e' capitato in passato
    va analizzato come mai vanno in conflitto le operazioni: se nell'istruzione viene chiaramente indicato l'id della reception il motore sql NON può andare in confusione

  4. #14
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,785
    in realta' in Update puo' andare in confusione quando si verifica concorrenza (operazioni onerose in un altro thread).

    per evitarla, c'è l'istruzione With NOLOCK che fa in modo da prendere il valore ignorando i cambiamenti in corso da altri


    https://docs.microsoft.com/en-us/sql...l-server-ver15
    (cerca "READUNCOMMITTED")

  5. #15
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,087
    Non ti è più facile comporre la stringa sql in questo modo?

    codice:
    Dim sb As New StringBuilder()
    
    sb.AppendFormat("Select * from reception_{0} where tessera >= {1} and tessera <= {2}", 0, datainizio2, datafine2)
    
    For i As Integer = 1 To 7
        sb.AppendFormat(" union Select * from reception_{0} where tessera >= {1} and tessera <= {2}", i, datainizio2, datafine2)
    Next
    
    sb.Append(" order by tessera desc, datas desc ")
    
    
    Dim sql As String = sb.ToString
    Ultima modifica di djciko; 29-07-2020 a 12:03
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.