![]() |
|
|
|||||||
| Datenbankprogrammierung Fragen zur Anbindung und Programmierung von Datenbanken bzw. Datenbankabfragen |
|
|
|
Themen-Optionen | Thema durchsuchen | Ansicht |
| #1 (permalink) | |
|
Nicht angemeldet
Fachbeiträge: n/a
|
Hallo!
Ich habe eine MySQL Datenbank und den ODBC Connector installiert. Nun will ich über ein Servlet eine Verbindung zu dieser Datenbank herstellen. Aber irgendwie funktioniert das nicht. Ich glaube das Problem liegt entweder an der Datenbankverbindung und/oder am Insert: Datenbankverbindung: public void init() throws ServletException { String Treiber = "sun.jdbc.odbc.JdbcOdbcDriver"; String URL = "jdbc:odbc:Fitness"; String User = "root"; String Passwort = "root"; try { Class.forName(Treiber); con = DriverManager.getConnection(URL, User, Passwort); } catch (Exception ex) { log(ex.getMessage()); } Insert: Statement stmt = con.createStatement(); String query = "insert into Mitgliedsdaten values ('"+strTextfeld1+"','"+strTextfeld2+ "','"+strTextfeld3+"','"+strTextfeld4+"','"+strTextfeld5+"','"+strTextfeld6+"','"+strTextfeld7+ "','"+strTextfeld8+"','"+strTextfeld9+"','"+strTextfeld10+"','"+strTextfeld11+"','"+strTextfeld12+ "','"+strTextfeld13+"','"+strTextfeld14+"','"+strTextfeld15+"','"+strTextfeld16+"','"+strTextfeld17+"')"; stmt.execute(query); Noch eine Frage: Ich habe in der Tabelle für den Primary Key smallint und auto_increment eingegeben. Muß ich das auto_increment beim insert beachten oder kann ich gleich mit dem nächsten Wert anfangen? Danke für alle Antworten!!! |
| #4 (permalink) | |
|
Stammbenutzer
Halbes Gigabyte
Registriert seit: 06.09.2004
Fachbeiträge: 5.829
Abgegebene Danke: 12
Erhielt 107 Danke für 87 Beiträge
|
so wie du es gemacht hast musst du alle spalten angeben, und für den autoincrementer NULL eintragen
was ist denn der Fehler??
__________________
If you have nothing bad to say, say nothing. |
|
|
| #5 (permalink) | |
|
Nicht angemeldet
Fachbeiträge: n/a
|
Hier einmal der Quellcode:
package fitness; import javax.servlet.*; import javax.servlet.http.*; import java.io.*; import java.util.*; import java.sql.*; public class NeuesMitglied extends HttpServlet implements Serializable { Connection con = null; private static final String CONTENT_TYPE = "text/html"; //Initialize global variables public void init() throws ServletException { String Treiber = "sun.jdbc.odbc.JdbcOdbcDriver"; String URL = "jdbc:odbc:Fitness"; String User = "root"; String Passwort = "root"; try { Class.forName(Treiber); con = DriverManager.getConnection(URL, User, Passwort); } catch (Exception ex) { log(ex.getMessage()); } } //Process the HTTP Get request public void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(CONTENT_TYPE); PrintWriter out = response.getWriter(); Eintrag neuerEintrag = new Eintrag(); neuerEintrag.aufnehmen(request); neuerEintrag.printHTML(out,request.getRequestURI()); String action = request.getParameter("auswahl"); if (action != null) { try { if (action.equals("insert")) { neuerEintrag.speichern(con,out); } } catch (Exception ex) { log(ex.toString()); } } } class Eintrag { String strTextfeld1 = null; String strTextfeld2 = null; String strTextfeld3 = null; String strTextfeld4 = null; String strTextfeld5 = null; String strTextfeld6 = null; String strTextfeld7 = null; String strTextfeld8 = null; String strTextfeld9 = null; String strTextfeld10 = null; String strTextfeld11 = null; String strTextfeld12 = null; String strTextfeld13 = null; String strTextfeld14 = null; String strTextfeld15 = null; String strTextfeld16 = null; String strTextfeld17 = null; public void aufnehmen(HttpServletRequest request) { strTextfeld1 = request.getParameter("Name"); strTextfeld2 = request.getParameter("Vorname"); strTextfeld3 = request.getParameter("Strasse"); strTextfeld4 = request.getParameter("Hausnummer"); strTextfeld5 = request.getParameter("PLZ"); strTextfeld6 = request.getParameter("Wohnort"); strTextfeld7 = request.getParameter("Telefon"); strTextfeld8 = request.getParameter("Handy"); strTextfeld9 = request.getParameter("EMail"); strTextfeld10 = request.getParameter("Geburtsdatum"); strTextfeld11 = request.getParameter("Bild"); strTextfeld12 = request.getParameter("Beitrag"); strTextfeld13 = request.getParameter("BLZ"); strTextfeld14 = request.getParameter("Kreditinstitut"); strTextfeld15 = request.getParameter("Kontonummer"); strTextfeld16 = request.getParameter("Vertragsbeginn"); strTextfeld17 = request.getParameter("Vertragsende"); } public void speichern (Connection con, PrintWriter out) throws SQLException { Statement stmt = con.createStatement(); String query = "insert into Mitgliedsdaten (BID,Name,Vorname,Strasse,Hausnummer,PLZ,Wohnort, Telefon,Handy,EMail,Geburtsdatum,Bild,Beitrag,BLZ,Kreditinstitut,Kontonummer, Vertragsbeginn,Vertragsende) values (NULL,'"+strTextfeld1+"','"+strTextfeld2+ "','"+strTextfeld3+"','"+strTextfeld4+"','"+strTextfeld5+"','"+strTextfeld6+"','"+strTextfeld7+ "','"+strTextfeld8+"','"+strTextfeld9+"','"+strTextfeld10+"','"+strTextfeld11+"','"+strTextfeld12+ "','"+strTextfeld13+"','"+strTextfeld14+"','"+strTextfeld15+"','"+strTextfeld16+"','"+strTextfeld17+"')"; stmt.execute(query); out.println("Neues Mitglied erfolgreich eingetragen"); } protected void printHTML(PrintWriter out, String servletPath) throws ServletException, IOException { int i = servletPath.indexOf('?'); if (i != -1) servletPath = servletPath.substring(0, i); out.println("<html>"); out.println("<head>"); out.println("<title>Neues Mitglied</title>"); out.println("</head>"); out.println("<body text='#000000' bgcolor='#FFFF00' link='#FF0000' alink='#FF0000' vlink='#FF0000'>"); out.println("<center>"); out.println("<h1>Neues Mitglied aufnehmen</h1>"); out.println("</center>"); out.println("<form action='" + servletPath + "' method='post' target=''>"); out.println("<h3><u>Mitgliederdaten:</u></h3>"); out.println("<center>"); out.println("<table>"); out.println("<input type='hidden' name='auswahl' value='insert'>"); out.println("<tr>"); out.println("<td><font size=+1>Name:</font></td>"); out.println( "<td><input type='Text' name='Name' value='' size='25' maxlength='50'> </td>"); out.println("<td>&&&&& </td>"); out.println("<td><font size=+1>Vorname:</font> </td>"); out.println( "<td><input type='Text' name='Vorname' value='' size='25' maxlength='50'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>Strasse:</font> </td>"); out.println( "<td><input type='Text' name='Strasse' value='' size='25' maxlength='50'> </td>"); out.println("<td> &&&&&</td>"); out.println("<td><font size=+1>Hausnummer:</font> </td>"); out.println("<td><input type='Text' name='Hausnummer' value='' size='5' maxlength='10'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>PLZ:</font> </td>"); out.println( "<td><input type='Text' name='PLZ' value='' size='25' maxlength='5'> </td>"); out.println("<td> &&&&&</td>"); out.println("<td><font size=+1>Wohnort:</font> </td>"); out.println( "<td><input type='Text' name='Wohnort' value='' size='25' maxlength='50'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>Telefon:</font> </td>"); out.println( "<td><input type='Text' name='Telefon' value='' size='25' maxlength='20'> </td>"); out.println("<td> &&&&&</td>"); out.println("<td><font size=+1>Handy:</font> </td>"); out.println( "<td><input type='Text' name='Handy' value='' size='25' maxlength='20'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>E-Mail:</font> </td>"); out.println( "<td><input type='Text' name='EMail' value='' size='25' maxlength='50'> </td>"); out.println("<td> &&&&&</td>"); out.println("<td><font size=+1>Geburtsdatum:</font> </td>"); out.println("<td><input type='Text' name='Geburtsdatum' value='' size='25' maxlength='20'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>Bild:</font> </td>"); out.println("<td><input name='Bild' type='file' size='25' maxlength='100' accept='text/*'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>Beitrag:</font> </td>"); out.println("<td><select name='Beitrag' size='1'>"); out.println("<option selected>RIN BU KAI</option>"); out.println("<option>RIN BU KAI/Fitness</option>"); out.println("<option>Fitness</option>"); out.println("</select> </td>"); out.println("<td>&&&&& </td>"); out.println("</tr>"); out.println("</table>"); out.println("</center>"); out.println("<h3><u>Bankverbindung:</u></h3>"); out.println("<center>"); out.println("<table>"); out.println("<tr>"); out.println("<td><font size=+1>BLZ:</font> </td>"); out.println( "<td><input type='Text' name='BLZ' value='' size='' maxlength='20'> </td>"); out.println("<td>&&&&& </td>"); out.println("<td><font size=+1>Kreditinstitut:</font> </td>"); out.println("<td><input type='Text' name='Kreditinstitut' value='' size='' maxlength='50'> </td>"); out.println("</tr>"); out.println("<tr>"); out.println("<td><font size=+1>Kontonummer:</font> </td>"); out.println("<td><input type='Text' name='Kontonummer' value='' size='' maxlength='20'></td>"); out.println("<td>&&&&& </td>"); out.println("</tr>"); out.println("</table>"); out.println("</center>"); out.println("<h3><u>Vertragslaufzeit:</u></h3>"); out.println("<center>"); out.println("<table>"); out.println("<tr>"); out.println("<td><font size=+1>Vertragsbeginn:</font> </td>"); out.println("<td><input type='Text' name='Vertragsbeginn' value='(dd.mm.yyyy)' size='' maxlength='20'> </td>"); out.println("<td>&&&&& </td>"); out.println("<td><font size=+1>Vertragsende:</font> </td>"); out.println("<td><input type='Text' name='Vertragsende' value='(dd.mm.yyyy)' size='' maxlength='20'> </td>"); out.println("</tr>"); out.println("</table>"); out.println("</center>"); out.println(" "); out.println("<center>"); out.println( "<input type='Submit' name='Button1' value='Daten senden!!!'>"); out.println("&&"); out.println( "<input type='Reset' name='Button2' value='Daten l&schen!!!'>"); out.println("</center>"); out.println("</form>"); out.println("</body>"); out.println("</html>"); } //Clean up resources public void destroy() { try { con.close(); } catch (SQLException ex) { log (ex.getMessage()); } } } } Frage: Muss ich bei der URL die Verbindung zur Datenbank oder zur ODBC Schnittstelle angeben? |
|
| Themen-Optionen | Thema durchsuchen |
| Ansicht | |
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Java und MySQL | p-flash | Datenbankprogrammierung | 7 | 20.04.2008 10:52 |
| Images: mysql->java->mysql | rogi1 | Java Basics - Anfänger-Themen | 0 | 13.09.2007 18:35 |
| Java & MySQL | X-Treme | Java Basics - Anfänger-Themen | 7 | 30.11.2006 07:49 |
| Java - FTP und MySQL | flaka | Java Basics - Anfänger-Themen | 1 | 18.12.2005 14:07 |
| Java & MySQL | Philipp Gérard | Datenbankprogrammierung | 26 | 28.05.2004 14:56 |
| Lesezeichen |
|
|