Buonasera a tutti,
Riprendendo l'esempio contenuto all'interno di questo sito ho voluto creare un piccolo programma per visualizzare tabelle e campi di un Db mysql con asp:
<%
'Stringa di connessione al Db mysql
Set conn=Server.CreateObject("ADODB.Connection")
conn.open="DRIVER={MYSQL ODBC 5.1 DRIVER}; UID=root; server=localhost; PWD=xxx;"
'-------------------------------------------------------------
'creo un contatore per le tabelle all'interno del Db "montagna"
tot_tables=0
set rs=Server.CreateObject("ADODB.recordset")
sql="Show tables from montagna"
rs.open (sql), conn
if not rs.EOF then
do while not rs.EOF
tot_tables=tot_tables+1
rs.MoveNext
Loop
End If
rs.close
set rs=nothing
'-----------------------------
Set rs=Server.createObject("ADODB.recordset")
sql="Show tables from montagna"
rs.open (sql), conn
if not rs.EOF then
reDim arr_tables(tot_tables)
t=0
response.write "<table style=""font-family: verdana; font: 11px;"">"
do while not rs.EOF
if t mod 2=0 then
strSfondo="#CCCC00"
else
strSfondo="#CCCCFF"
End if
arr_tables(t)=rs(0)
response.write"<tr>"
response.write"<td style=""background:" & strSfondo & ";"">"
response.write" Tabella :" & right("00" & t+1,2) & "----> " & rs(0)
' fin qui il programma funziona
' Lo script successivo mi dà come debug "No database selected"
'---------------------------------------------------------------------
Set rs2=Server.createObject("ADODB.recordset") ' voglio visualizzare i campi di ogni tabella
strFields="SHOW FIELDS FROM "& rs(0)
rs2.open strFields, conn
if not rs2.EOF then
f=0
do while not rs2.EOF
response.write "[*] Campo " & right("00" & f+1,2) & "-------->" & rs2(0) & ""
f=f+1
rs2.MoveNext
Loop
End If
rs2.close
Set rs2=nothing
'-------------------------------------------------------------------------------------
t=t+1
rs.MoveNext
response.write"</td>"
response.write"</tr>"
Loop
End if
rs.close
set rs=nothing
response.write"</Table>"
%>
Il debug mi dice " No database selected " ma non capisco quale sia l'errore. Certamente qualche esperto può trovare facilmente la soluzione. Spero di riuscire a trovare il problema. un saluto