Newsgroup: it.comp.www.asp
Titolo: MYSQL + ASP

Sto utilizzando alcune stringhe per la connessione a MySql:
ecco la prima che ho trovato su un libro: (nella tabella Carlito ho 5
record)
[code]
<% @Language=VBScript %>
<html><body>
<%
 'Collegati al DB:
 Dim adoConnection,adoRecordSet
 Dim U_id,U_nome,U_cognome
 Set adoConnection = Server.CreateObject("ADODB.Connection")
       adoConnection.Open("DSN=ilmioDB")
       adoRecordSet = adoConnection.Execute("select * from carlito")
         U_id = adoRecordSet("ID_num").value
         U_nome = adoRecordSet("U_nome").value
         U_cognome = adoRecordSet("U_cognome").value
       adoConnection.Close()
       adoConnection = null
%>
<%= U_id %><%= U_nome %><%= U_cognome %>
</body></html>
[/code]
sul libro c'č scritto che nella riga:
[code]
adoRecordSet = adoConnection.Execute("select * from carlito")
[/code]
dovrebbe restituire un oggetto di tipo "Recordset"...ma invece non č vero!
infatti i metodi:
[code]
adoRecordSet.Eof
adoRecordSet.MoveNext()
adoRecordSet.Close()
[/code]
non esistono!!! e la pagina mi va in errore!!! (quindi posso solo ottenere
la prima riga della tabella...)
questa invece sulle freeasp č molto piů complessa:
[code]
<% @Language=VBScript %>
<% Option Explicit %>
<html>
<head><title>MYSQL</title></head>
<body>
<%
 Dim Conn
 Dim Comm
 Dim Rs
 Dim U_id,U_nome,U_cognome
 'Crea gli oggetti per la connessione:
 Set conn = Server.CreateObject("ADODB.Connection")
 Set comm = Server.CreateObject("ADODB.Command")
 Set Rs = Server.CreateObject("ADODB.Recordset")
 conn.CommandTimeout = 40
 conn.CursorLocation = 1
 conn.ConnectionString = "db=duccio;server=localhost;driver=MySQL;uid=root;"
 conn.Open
 comm.ActiveConnection = conn
 comm.CommandType = 1
 comm.CommandText = "select * from carlito"
 Rs.Open comm,,1,1
 'Scandisce i dati:
 do while not Rs.eof
    U_id = Rs("ID_num")
    U_nome = Rs("U_nome")
    U_cognome =Rs("U_cognome")
    %>
         <b><%=U_id %></b>&nbsp;<%=U_nome %>&nbsp;<%=U_cognome %><br>
    <%
    Rs.movenext
 loop
 Rs.close
 conn.close
 set Rs = nothing
 set comm = nothing
 set conn = nothing
%>
</body>
</html>
[/code]
la trovo piů complessa...allora:
se volessi eseguire dei comandi (insert,update) posso ancora utilizzare
"Execute" ?
se volessi sapere quanti record ci sono? (Senza scandire tutta la tab)
cos'č:  --> Rs.Open comm,,1,1 <-- ?
posso sostituire: conn.ConnectionString =
"db=duccio;server=localhost;driver=MySQL;uid=root;"
con: conn.Open("DSN") ?
cosa sono: (sono necessari?)
conn.CommandTimeout = 40
conn.CursorLocation = 1
comm.CommandType = 1
al posto di:
 comm.CommandText = "select * from carlito"
posso utilizzare (e come): comm.Execute?
grazie ancora...io sto con Win2k + IIS5 + Mysql 3.2
ciao!

 ciao!
Ciao
-- 
AZ [Microsoft .NET MVP]
.NET Community: 
http://www.aspitalia.com/
Il mio blog: 
http://blogs.aspitalia.com/az/
Microsoft MVP: 
http://italy.mvps.org/
Sito personale: 
http://ciclismo.sitiasp.it/


***
<% @Language=VBScript %>
<% Option Explicit %>
<html><body>
<%
 'Collegati al DB:
 Dim adoConnection,adoRecordSet
 Dim U_id,U_nome,U_cognome
 Dim numero_campi
 Set adoConnection = Server.CreateObject("ADODB.Connection")
 Set adoRecordSet  = Server.CreateObject("ADODB.Recordset")
       adoConnection.CommandTimeout = 40
       adoConnection.Open("DSN=ilmioDB")
 Set adoRecordSet = adoConnection.Execute("select * from carlito")
     DO WHILE NOT adoRecordSet.Eof
         U_id = adoRecordSet("ID_num").value
         U_nome = adoRecordSet("U_nome").value
         U_cognome = adoRecordSet("U_cognome").value
       Response.Write(U_id & " " & U_nome & " " & U_cognome & "<br>")
             adoRecordSet.MoveNext()
      LOOP
       adoRecordSet.Close()
 Set adoRecordSet = nothing
       adoConnection.Close()
 Set adoConnection = nothing
%>
<br><b><%= numero_campi %></b>
</body></html>
***
questo è il codice completo e sembra funzionare bene...ma il conteggio dei
record non mi è funzionato!
(non fa niente!)

 (non fa niente!)
Inserisci il cursor type per il recordset:
...
Set adoConnection = Server.CreateObject("ADODB.Connection")
Set adoRecordSet  = Server.CreateObject("ADODB.Recordset")
  adoRecordSet.CursorType  =1
        adoConnection.CommandTimeout = 40
        adoConnection.Open("DSN=ilmioDB")
  Set adoRecordSet = adoConnection.Execute("select * from carlito")
...
