Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    18

    [ASP/MSSQL] Paginazione

    Salve a tutti!

    Sto realizzando una pagina ASP che mi consenta di "paginare" i Record in Output di una Query..
    Il DataBase che purtroppo sono costretto ad utilizzare è realizzato in Microsoft Access 2000..

    Avevo dunque ben pensato di costruirmi un mini-algoritmo per la paginazione ricavando il numero di pagina attuale (tramite querystring), il numero di pagine da allocare (tramite una SELECT COUNT(*)) e mandare in pasto all'SQL una bella Query di questo tipo:

    codice:
    Sql = "SELECT * FROM Cie ORDER BY cognome LIMIT " & inizio & ", " & offset & ";"
    tuttavia con estremo TERRORE ho appena scoperto che l'MSSQL non dispone dell'istruzione LIMIT nella sua sintassi e che l'unica istruzione ad essa più vicina è la
    codice:
    SELECT TOP n
    Tale istruzione però non fa al caso mio, oltre a selezionare le Tuple sempre a partire dalla prima ha anche l'enorme difetto di non "limitare" la selezione alla n-esima riga in presenza della Clausola ORDER BY!!! VVoVe:

    In pratica nel mio caso se uso SELECT TOP 2 mi restituisce le prime 4 tuple perchè nelle tuple numero 2, 3 e 4 il cognome è il medesimo..

    A questo punto ho provato a pensare alla soluzione più "sporca" travasando l'intero RecordSet in un Array BiDimensionale (matrice) con lunghezza dinamica (che ricavo tramite il Count(*) della query)

    Tuttavia se dichiaro così l'Array:
    codice:
    Dim arrayRecord(numtotale)(campi)
    mi da un errore dicendo che ha bisogno di costanti intere nella dichiarazione...

    Se la provo in maniera brutale:
    codice:
    Dim arrayRecord(2000)(2000)
    Mi dice Errore di compilazione di Microsoft VBScript (0x800A0401)
    Prevista fine istruzione

    A questo punto sono in preda alla disperazione più totale

    Vi prego di aiutarmi.. come posso dichiarare l'Array? esiste un'alternativa al LIMIT in MSSQL???
    Vi prego ditemi di si...

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    18
    grazie mille!!
    Lo testo subitissimo!!!

    Cmq si scusa si tratta di Microsoft Access e non MSSQL che invece è un'altra cosa...
    Anche se MSSQL dovrebbe essere il "padre" di Access giusto???

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 © 2025 vBulletin Solutions, Inc. All rights reserved.