Avatar billede joki Mester
10. juli 2005 - 15:39 Der er 10 kommentarer og
1 løsning

Brug af integer variabel i sql syntax

Hej

Jeg skal lave en forspørgelse i min database, hvor en integer variabel angiver kriterierne. Hvordan angiver jeg denne variabel ??
Avatar billede arne_v Ekspert
10. juli 2005 - 15:42 #1
ResultSet rs = stmt.executeQuery("SELECT * FROM t WHERE f = " + request.getParameter("f"));

er den mest simple
Avatar billede arne_v Ekspert
10. juli 2005 - 15:43 #2
så kan du bruge prepared statement etc.etc. - der er rigtigt mange muligheder

men post evt. lidt kontekst så vi bedre kan rådgive
Avatar billede joki Mester
10. juli 2005 - 16:25 #3
Du er godt nok hurtig Arne. smid bare et svar.
Har et andet problem. Burde der være nogle problemer med at køre sql insert via odbc ?
Avatar billede arne_v Ekspert
10. juli 2005 - 16:35 #4
svar
Avatar billede arne_v Ekspert
10. juli 2005 - 16:36 #5
ja og nej

selvfølgelig kan du lave INSERT med JDBC ODBC bridgen

men den JDBC ODBC bridge som kommer med Java er noget forfærdeligt crap - ikke
thread safe, dårlige fejlmeddelelser etc.etc.
Avatar billede joki Mester
10. juli 2005 - 16:51 #6
kan godt følge det med dårlige fejlmeddelelser.

Connection ConnRecordset1 = DriverManager.getConnection(MM_filemaker_STRING,MM_filemaker_USERNAME,MM_filemaker_PASSWORD);
PreparedStatement StatementRecordset1 = ConnRecordset1.prepareStatement("insert into log (mail) values('test')");
StatementRecordset1.executeUpdate();

Har du nogen ide om hvorfor dette ikke virker
Avatar billede arne_v Ekspert
10. juli 2005 - 17:01 #7
hvilken fejl får du ?

hvordan ser tabel struktur ud ?
Avatar billede joki Mester
10. juli 2005 - 17:17 #8
Fejl

root cause
exception

org.apache.jasper.JasperException
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:372)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

java.lang.NullPointerException
    org.apache.jsp.gest1.web.fmlogin1_jsp._jspService(fmlogin1_jsp.java:78)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)

Tabellen er med et enkelt fejl af typen tekst.
Avatar billede arne_v Ekspert
10. juli 2005 - 17:22 #9
NullPointerException ...

check ConnRecordset1 og StatementRecordset1
Avatar billede joki Mester
10. juli 2005 - 17:32 #10
opdagede at den faktisk oprettede records i tabellen, så fejlen måtte ligge et andet sted.
Har disablet noget af min kode, og får nu en tom side uden fejl, der skriver i basen.
Fejlen i koden er nok til at finde i morgen, så takker for hjælpen.
Avatar billede arne_v Ekspert
10. juli 2005 - 17:35 #11
fejlen sker jo i linie 78 i fmlogin1_jsp.java

som er den fil JSPC oversætter fmlogin1.jsp til

linienumrene er ikke de samme men du kan finde .java filen i
C:\Tomcat-5.5.9\work\Catalina\localhost\xxxx hvor xxxx we navnet på din web app
og så er det normalt ret nemt at korrelere til .jsp filen
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester