Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    query che non va, perchè?!

    è tutta oggi che ci sto su
    allora questa query mi dà errore "parametri insufficenti"

    strSQL="SELECT Price*(1-Discount/100)*(1+Tax/100) AS PriceTmp FROM Products ORDER BY PriceTmp DESC"

    facendo qualche prova la ho riscritta come

    strSQL="SELECT Price*(1-Discount/100)*(1+Tax/100) AS PriceTmp FROM Products ORDER BY Price*(1-Discount/100)*(1+Tax/100) DESC"

    e funziona...
    per caso è vietato ordinare in secondo un alias?!
    non ho trovato niente a riguardo...
    grazie in anticipo a chi mi illumina

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Mi sa che ti sei risposto da solo...
    Il db è Access?

    Roby

  3. #3
    si access
    ma sulla guida non c'è scritto
    non che cambia molto ma per sapere

  4. #4
    poi dici che non devo
    ho provato a cercare su msdn "order by access" ed il testo dell'errore

    http://support.microsoft.com/default...b;en-us;208968


  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    You have an expression in your query that has a criteria or sort order, and the query references a different field in the query that uses an alias.


    Roby

  6. #6
    Anche io in una pagina ho un problema di parametri insufficienti...
    codice:
    var ord = Request.QueryString("ord");
    var cat = Request.QueryString("cat");
    if (cat == "undefined") 
     cat= "all";
    if (ord == "undefined") 
     ord= "titolo";
    if (cat== "all")  var Rs = Cn.Execute("SELECT * FROM appunti ORDER BY "+ ord);
    else var Rs = Cn.Execute("SELECT * FROM appunti WHERE materia ='" + cat + "' ORDER BY "+ ord);
    Non so nemmeno se concettualmente vada bene lo script ed è per questo che vi chiedo aiuto.

    Devo visualizzare i dati di un database in una pagina ASP con JS. Io l'avevo pensata così: passo alla pagina i parametri cat (categoria) e ord (ordine) e visualizzo il contenuto. In particolare se cat="all" (cioè tutto) visualizzo tutti i dati, altrimenti visualizzo solo quelli che appartengono a quella categoria. Fino a qui funziona tutto.
    Se però apro la pagina appunti.asp (che è quella in questione) senza scriverci niente dopo volevo che automaticamente mi visualizzasse tutti i dati disposti per titolo. A questo punto nasce l'errore che riporto:
    codice:
    HTTP 500.100 - Errore interno del server - errore ASP
    Internet Information Services
    
    --------------------------------------------------------------------------------
    
    Informazioni tecniche (per il personale del supporto tecnico)
    
    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
    [Microsoft][Driver ODBC Microsoft Access] Parametri insufficienti. Previsto 1.
    /prove/appunti.asp, line 12
    
    
    Tipo di browser:
    Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 1.0.3705) 
    
    Pagina:
    GET /prove/appunti.asp
    Spero che qualcuno abbia una soluzione e vi ringrazio in anticipo per l'aiuto!
    Comunque vada... faccio sempre appello alla giraffa!!

  7. #7
    fatti stampare la stringa sql prima di eseguirla...

  8. #8
    Moderatore di CMS L'avatar di kalosjo
    Registrato dal
    Jul 2001
    residenza
    In culo alla luna
    Messaggi
    1,999
    pARAMETRI INSUFFICIENTI, PREVISTO N

    E' un errore che indica che il nome di un campo è sbagliato (lo considera un parametro e non trova il valore corrispondente)

    In questo caso credo che la variabile ord non prenda il valore voluto...
    Scusate i puntini di sospensione...... La verità è che non ho argomenti....

  9. #9
    Ho provato a stampare la stringa di connessione (grazie per il consiglio optime) e proprio come diceva kalosjo il problema dei parametri insufficenti riguarda appunto la variabile ord...
    Il problema dello script però è un altro!

    SELECT * FROM appunti WHERE materia ='undefined' ORDER BY undefined

    Questa è la stringa di connessione che salta fuori da questo script:

    codice:
    var ord = Request.QueryString("ord");
    var cat = Request.QueryString("cat");
    if (cat == "undefined") 
     cat = "all";
    if (ord == "undefined") 
     ord = "titolo";
       
    if (cat== "all")  var Rs = "SELECT * FROM appunti ORDER BY "+ ord;
    else var Rs = "SELECT * FROM appunti WHERE materia ='" + cat + "' ORDER BY "+ ord;
    In teoria se ord e cat sono undefined dovrebbe sostituirli con all e titolo...in pratica questo non succede...dove sbaglio?
    Ricordo che uso sempre JS
    Comunque vada... faccio sempre appello alla giraffa!!

  10. #10
    Utente di HTML.it L'avatar di heroes3
    Registrato dal
    Aug 2001
    Messaggi
    2,483
    io ho risolto sempre questo problemi con access impostando quando apro il db la conn full
    quindi
    dbc.open Cstring,3,3



    Quindi sono errori di cursortype e altro

    provate


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.