Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 40

Discussione: Select Count con MYSQL

  1. #1
    Utente di HTML.it L'avatar di Fool
    Registrato dal
    May 2002
    Messaggi
    8,342

    Select Count con MYSQL

    <%
    'On Error Resume Next
    connectionstring = "DRIVER={MySQL ODBC 3.51 Driver};DATABASE=Sqllol_5;SERVER=LOL;UID=LOL;PASSW ORD=LOL"
    set objConn = server.createObject("ADODB.Connection")
    objConn.Open connectionstring


    SQL="SELECT COUNT(ID) as Conta FROM Articoli"


    Set rec=objConn.Execute(SQL)

    SQL="SELECT COUNT(*) as Conta2 FROM Articoli WHERE Canale='Flash'"

    Set rec = Server.CreateObject("ADODB.Recordset")
    Set rec=objConn.Execute(SQL)


    %>
    <%=rec("conta2")%>

    <%=rec("conta")%>

    Mi dice

    ADODB.Recordset error '800a0cc1'

    Item cannot be found in the collection corresponding to the requested name or ordinal.

    /varie/statistica.asp, line 40

    In pratica devo contare prima tutti i record, poi solo quelli che hanno Canale=Flash

    dov'è il problema?

    Grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Che hai chiamato i due recordset allo stesso modo e quindi....
    O sposti su questo

    <%=rec("conta")%>

    oppure cambi nome al secondo recordset.

    Roby

  3. #3
    Utente di HTML.it L'avatar di Fool
    Registrato dal
    May 2002
    Messaggi
    8,342
    Originariamente inviato da Roby_72
    Che hai chiamato i due recordset allo stesso modo e quindi....
    O sposti su questo

    <%=rec("conta")%>

    oppure cambi nome al secondo recordset.

    Roby
    uno si chiama conta e uno conta2...

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ho detto i recordset non i campi (o alias)!
    Infatti lui ti dice che nel secondo recordset il campo <%=rec("conta")%> non lo trova...

    Roby


  5. #5
    Utente di HTML.it L'avatar di Fool
    Registrato dal
    May 2002
    Messaggi
    8,342
    SQL="SELECT COUNT(ID) as Conta FROM Articoli"


    Set rec2=objConn.Execute(SQL)

    SQL="SELECT COUNT(*) as Conta FROM Articoli WHERE Canale='Flash'"

    Set rec2 = Server.CreateObject("ADODB.Recordset")
    Set rec = Server.CreateObject("ADODB.Recordset")

    Set rec=objConn.Execute(SQL)

    che dici ?

  6. #6
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    Originariamente inviato da Fool
    SQL="SELECT COUNT(ID) as Conta FROM Articoli"

    Set rec2 = Server.CreateObject("ADODB.Recordset")
    Set rec2=objConn.Execute(SQL)

    SQL="SELECT COUNT(*) as Conta FROM Articoli WHERE Canale='Flash'"


    Set rec = Server.CreateObject("ADODB.Recordset")

    Set rec=objConn.Execute(SQL)
    stai a fa un casino...
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  7. #7
    Utente di HTML.it L'avatar di Fool
    Registrato dal
    May 2002
    Messaggi
    8,342
    Funziona grazie mille...

    Ma non posso aprire un recordset con una sql, stampare a video il risultato e poi applicare un altra SQL allo stesso recordset?

    Cosi evito di creare 10000 recordset...

  8. #8
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    potresti semplicemente appoggiare il valore in una variabile e riusare lo stesso recordset:
    codice:
    <%
    SQL="SELECT COUNT(ID) as Conta FROM Articoli" 
    
    Set rec = Server.CreateObject("ADODB.Recordset") 
    Set rec=objConn.Execute(SQL) 
    primovalore = res("conta")
    rec.Close
    
    SQL="SELECT COUNT(*) as Conta FROM Articoli WHERE Canale='Flash'" 
    Set rec=objConn.Execute(SQL) 
    secondovalore = rec("conta")
    rec.Close
    Set rec = Nothing
    %>
    <%=primovalore%> 
    
    <%=secondovalore%>
    mi spiego?
    forse rec.Close non serve se non usi il metodo Open del recordset...vabbè se non funzica toglilo semplicemente
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

  9. #9
    Utente di HTML.it L'avatar di Fool
    Registrato dal
    May 2002
    Messaggi
    8,342
    Chiarissimo

    Pero io ricordavo che potevo mettere piu SQL per ogni RS, ricordo male ?

    cioè

    SQL

    rs("valore")

    SQL

    rs("valore2")

    Cmq usero quello che mi hai consigliato, era solo per curiosita

  10. #10
    Utente di HTML.it L'avatar di Sypher
    Registrato dal
    Jun 2003
    Messaggi
    1,994
    ma se con lo stesso recordset rifai un'altra query i vecchi valori vanno persi
    per spiegarmi...riempio una brocca coll'acqua, poi la svuoto e ci metto il vino...poi tu arrivi e mi chiedi un bicchier d'acqua ... è chiaro?
    La passera non dura perchè Sypher la cattura!

    "No one like us we don't care, we are millwall, super millwall, we are millwall from the DEN"

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.