Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [ASP] Errore SQL

  1. #1

    [ASP] Errore SQL

    ciao ragazzi...ho bisogno che diate un'okkiatina a questo codice...

    codice:
    <%
    	dim rndLuogo
    		rndLuogo=1
    	dim rndLuogoEvento
    		rndLuogoEvento=1
    
    	dim strPassdb
    		strPassdb=""
    	dim strOutput
    
    	Set Conn=Server.CreateObject("ADODB.Connection") 
    
    	strConn="driver={Microsoft Access Driver (*.mdb)}; " 
    	strConn=strConn & " DBQ=" & Server.MapPath("database.mdb") 
    	strConn=strConn & ";pwd=" & strPassdb
    
    	Conn.Open (strConn)
    		
    	strSqlLuogo = "SELECT * FROM LUOGO"
    	strSqlLuogoEvento = "SELECT * FROM LUOGHI WHERE ID_LUOGO = " & rndLuogoEvento
    	strSqlEvento = "SELECT * FROM LUOGHI_EVENTI WHERE ID_LUOGO = " & rndLuogoEvento
    		
    	Set rsLuogo = Conn.Execute(strSqlLuogo)
    	Set rsLuogoEvento = Conn.Execute(strSqlLuogoEvento)
    	Set rsEvento = Conn.Execute(strSqlEvento)
    %>
    ...mi fa quest'errore:

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
    [Microsoft][Driver ODBC Microsoft Access] Tipi di dati non corrispondenti nell'espressione criterio.
    /lino/prova 1/index.asp, line 25


    Diciamo che ho appena iniziato a fare il mio primo sito in ASP!!!

  2. #2
    Utente di HTML.it L'avatar di pip19
    Registrato dal
    Dec 2001
    Messaggi
    512
    controlla i campi del tuo DB

    "Tipi di dati non corrispondenti nell'espressione criterio."

    di solito questo tipo di errore è dato quando cerchi di memorizzare ad esempio una stringa in un campo numerico

  3. #3
    nel mio db nn ho campi numerici...sono tutti di testo! e cmq nn sto inserendo nulla, sto solo chiedendo dei dati.

  4. #4
    ho provato anche così...

    codice:
    <%
    	dim rndLuogo
    		rndLuogo=1
    	dim rndLuogoEvento
    		rndLuogoEvento=1
    
    	dim strPassdb
    		strPassdb=""
    	dim strOutput
    
    	Set Conn1=Server.CreateObject("ADODB.Connection")
            Set Conn2=Server.CreateObject("ADODB.Connection")
            Set Conn3=Server.CreateObject("ADODB.Connection") 
    
    	strConn="driver={Microsoft Access Driver (*.mdb)}; " 
    	strConn=strConn & " DBQ=" & Server.MapPath("database.mdb") 
    	strConn=strConn & ";pwd=" & strPassdb
    
    	Conn1.Open (strConn)
            Conn2.Open (strConn)
            Conn3.Open (strConn)
    		
    	strSqlLuogo = "SELECT * FROM LUOGO"
    	strSqlLuogoEvento = "SELECT * FROM LUOGHI WHERE ID_LUOGO = " & rndLuogoEvento
    	strSqlEvento = "SELECT * FROM LUOGHI_EVENTI WHERE ID_LUOGO = " & rndLuogoEvento
    		
    	Set rsLuogo = Conn1.Execute(strSqlLuogo)
    	Set rsLuogoEvento = Conn2.Execute(strSqlLuogoEvento)
    	Set rsEvento = Conn3.Execute(strSqlEvento) 
    %>
    ...mi fa sempre lo stesso errore, ma dopo 4 linee di script...(la linea verde è la 29esima)

    Tipo di errore:
    Microsoft OLE DB Provider for ODBC Drivers (0x80040E07)
    [Microsoft][Driver ODBC Microsoft Access] Tipi di dati non corrispondenti nell'espressione criterio.
    /lino/prova 1/index.asp, line 29

  5. #5
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Scusa ma anche il campo id_luogo è di tipo testo???

    Roby

  6. #6
    nella tabella LUOGHI, ID_LUOGO è un contatore...
    nella tabella LUOGHI_EVENTI, ID_LUOGO è un testo...

    ...ma l'errore si presenta nel terzo Conn.Execute...il primo ed il secondo Conn.Execute vanno tranquillamente...boh!!!

  7. #7
    ho trovato l'errore...era nel db!!! Nella tabella LUOGHI_EVENTI ho messo ID_LUOGO come numerico, ed ora va tranquillamente!!! grazie...

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.