PreparedStatement ohne Parameter?

rwolf

Bekanntes Mitglied
hi all,

Lese Daten mit jdbc:eek:dbc aus neuerer MS-Access-Tabelle(...accDB)
Leider stehen in den Feldname Umlaute (so was würd ich NIE machen).
das führt beim Setzen von PreparedStaments zu
scheinbar unsinnigen SQL-Fehlermeldungen :

Abfrage : SELECT Kürzel,Anrede FROM Anrede (ja,so ist das alles benannt !)
oder : SELECT Kuerzel,Anrede FROM Anrede

SQL-Fehler : [Microsoft][ODBC-Treiber für Microsoft Access] 1 Parameter wurden erwartet, aber es wurden zu wenig Parameter übergeben.

Abfrage : SELECT * FROM Anrede funktioniert einwandfrei

in manchen Fällen kann bei meiner Universalanwendung durchaus ein PAramter vorkommen..
Java:
        Connection mk_con = get_gen_con();
        if(mk_con == null)
        {    
            System.err.println("** dbiface fill_mainkey_tab Con = NULL !?");
        }    
        else
        {
            try
            {
                //System.out.println("QPruef_Datahandler fill_mainkey_tab Filter-Var :"+regman_qp.jt_mk_filter_var);
                ps = mk_con.prepareStatement(sql_text);
                
                //- switch-Konstruktion wegen unterschiedlicher Def. in Tabellen !
                switch(menu_code)
                {
                    case 999 :
                    {
                        //#ps.setString(1, regman_qp.jt_mk_filter_var);
                        //ps.setString(1, regman_qp.g_bereich_k);
                        //ps.setInt(2,mps.show_eg_w_especs_only);
                        break;
                    }
                }
            }
            catch ( Exception e )
            {
                System.err.println("QPruef_DataHandler Menucode : "+menu_code+"Error : " +e.getMessage());
                e.printStackTrace();
            }   
            [COLOR="Magenta"]saetze = read_data2Vector_prepSt(ps, out_vec);[/COLOR]

und dann diese Routine:
Java:
	public static int read_data2Vector_prepSt(PreparedStatement ps, Vector vec_data)
	{
            int step = 0;
            //test_mode = false;

            if (test_mode)
                System.out.println("pif read_data2Vector_prepSt start");
            //mps.show_msg_dialog("pcdb_iface3","read_data2Vector_prepSt start");
            //System.out.println("pif read_data2Vector step : "+step);
            //if (test_mode)
              //  mu2.show_intarray_content(typ_maske);

            int row_count = 0, field_count=0,i=0;
            ResultSet rs;
            try
            {
                    step++;	//-(1)
                    if (test_mode)
                        System.out.println("pif read_data2Vector_prepSt step : "+step);

                    [COLOR="Red"]ps.execute();[/COLOR]  //- hier hauts ihn raus !

                    step++;	//-(2)
                    rs = (ResultSet) ps.getResultSet();
                    step++;	//-(3)
                    if (test_mode)
                        System.out.println("pif read_data2Vector_prepSt step : "+step);

                    ResultSetMetaData rsmd = rs.getMetaData();
Eigentlich wollte ich eine CRUDP(Create,Read,Update,Delete,Print)-Anwendung
für diverse Untertabellen schreiben, aber krieg ich dann bei UPDATE und INSERT die gleichen Probleme ?

wer hat ähnliche Erfahrungen gemacht und auch noch ne Lösung ?

(Später soll dann ja alles auf MS_SQL-Server umgesetzt werden,
hoffentlich werden dann die Feldname ohne Umlaute geschrieben)
aber erstmal muss ich mit MS-Access vorliebnehmen..

gruß
rwolf
 
Zuletzt bearbeitet von einem Moderator:
S

SlaterB

Gast
wieso verwendest du PreparedStatement, hast auskommentierte set-Methoden für ?-Parameter wie man sie in PreparedStatements verwendt und nennst dann als SQL
"SELECT Kürzel,Anrede FROM Anrede" ohne Parameter?

die Fehlermeldung ist GENAU die, die man erhält, wenn man einen ?-Parameter im PreparedStatement hat und nichts als Wert setzt,
insofern nehme ich stark an, dass du in der Hinsicht irgendwas falsch machst,
gib den sql_text aus,
 

rwolf

Bekanntes Mitglied
hallo,
danke für Euer Interesse !

es geht doch um ein universelles Modul, das viele verschiedene
Abfragen behandeln soll, mal mit, mal ohne Parameter;
und man kann - das hab ich ja mit ORACLE und MS-SQL-Server in einem anderen
Projekt realisiert - durchaus auch ohne Parameter abfragen !
Sozusagen gehört die Parameteranzahl 0 zur erlaubten Zahlenmenge !

Kann es sich hier um Treiberprobleme handeln ? Oder kommt ODBC damit generell nicht klar,
oder MS-Access ?
 
S

SlaterB

Gast
wie gesagt kann das sein, was du vermutest,
meine Vermutung ist aber nach wie vor eine andere, dass es um anderes SQL geht als du denkst, MIT ?,

vielleicht weißt du so genau Bescheid, dass meine Annahmen haltlos sind,
aber wenn du selber nur den geringsten Zweifel hast, dann solltest du das nochmal überprüfen/ überdenken,

starte ein neues Programm mit main-Methode, nötiger Initialisierung,
und dann Zeile 27 PreparedStament "SELECT * FROM Anrede" geht oder nicht?
und dann Zeile 30 PreparedStament "SELECT Kürzel,Anrede FROM Anrede" dahinter geht oder nicht?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Kirby.exe PreparedStatement wird nicht ausgeführt Datenbankprogrammierung 5
V SQLite NullPointerException in preparedStatement.close(); Datenbankprogrammierung 8
Neumi5694 SQL-Statement Preparedstatement - try resource vs. Garbage Collector Datenbankprogrammierung 5
S JDBC PreparedStatement durchiterieren Datenbankprogrammierung 6
S CSV Datein in DB übernehmen:PreparedStatement bzw executeBatch() zu langsam Datenbankprogrammierung 11
P MySQL PreparedStatement vs. StoredProcedure vs. executeBatch Datenbankprogrammierung 1
P PreparedStatement IN-Funktion Datenbankprogrammierung 8
turmaline Oracle [PreparedStatement] Klammer fehlt Datenbankprogrammierung 9
C PreparedStatement und null Datenbankprogrammierung 13
J Problem bei Boolean in PreparedStatement Datenbankprogrammierung 5
M Variable in SQL SELECT * FROM ... WHERE mithilfe von PreparedStatement benutzen? Datenbankprogrammierung 28
D MySQL PreparedStatement mit c3p0 schlägt fehl. Warum? Datenbankprogrammierung 3
S Oracle Problem mit PreparedStatement.setString(1,"str") Datenbankprogrammierung 10
M MySQL preparedStatement und Anführungszeichen Datenbankprogrammierung 6
L MySQL Probleme mit PreparedStatement für SQL-Abfrage in Java Datenbankprogrammierung 2
G PreparedStatement und Transaktionen Datenbankprogrammierung 2
N Leeres Blob in ein PreparedStatement eintragen Datenbankprogrammierung 2
P PreparedStatement batch und getGeneratedKeys Datenbankprogrammierung 7
T MySQL PreparedStatement mit INSERTs langsam, Batch-Statement auch Datenbankprogrammierung 4
B H2 PreparedStatement SELECT * FROM ? Datenbankprogrammierung 4
M FindBugs und PreparedStatement aus einer Datei lesen Datenbankprogrammierung 11
Guybrush Threepwood PreparedStatement: execute() oder executeUpdate() Datenbankprogrammierung 3
R PreparedStatement mit verschiedenen Datenbanken Datenbankprogrammierung 2
R Frage zu PreparedStatement/ResultSet Datenbankprogrammierung 16
R Zugriff auf SQL im PreparedStatement Datenbankprogrammierung 4
W preparedStatement (MySQL - JDBC) Datenbankprogrammierung 5
Landei PreparedStatement Parameter mehrfach verwenden Datenbankprogrammierung 18
S Create Table mit PreparedStatement Datenbankprogrammierung 2
S Select mit PreparedStatement Datenbankprogrammierung 2
S PreparedStatement setArray(int i, java.sql.Array) Datenbankprogrammierung 17
M Preparedstatement SQL-string auslesen Datenbankprogrammierung 13
T PreparedStatement anzeigen Datenbankprogrammierung 10
A PreparedStatement im Servlet - Referenz speichern Datenbankprogrammierung 3
P PreparedStatement - Angabe des PK Datenbankprogrammierung 4
J Fehler beim PreparedStatement Datenbankprogrammierung 2
B PreparedStatement - anzahl ParameterValues Datenbankprogrammierung 6
J PreparedStatement Datenbankprogrammierung 5
C PreparedStatement Datenbankprogrammierung 2
R DB2 PreparedStatement Batches ungültige Reihenfolge Datenbankprogrammierung 4
krgewb SELECT ohne IdClass-Annotation Datenbankprogrammierung 3
S MongoDB löschung ohne Cascade Datenbankprogrammierung 1
P Derby/JavaDB Datenbanktabelle erweitern, ohne Tabelle zu ändern Datenbankprogrammierung 6
D OpenJPA Zeichenvorrat in DB & Fremdschlüssel ohne Entität Datenbankprogrammierung 5
B Inner Join ohne SQL Syntax Datenbankprogrammierung 2
M MySQL Verbindung zum Server aufbauen ohne DB ansprechen Datenbankprogrammierung 2
ruutaiokwu sql abfrage mit rekursion, mit oder ohne cte... Datenbankprogrammierung 5
X MySQL DB-verbindung ohne JDBC/ODBC Datenbankprogrammierung 1
N SQL-Injection verhindern OHNE PreparedStatements Datenbankprogrammierung 11
D Hibernate CreateQuery ohne Result Datenbankprogrammierung 7
P SQL Injection verhindern ohne z.B. prepareStatement Datenbankprogrammierung 2
eskimo328 Datenbankverbindung ohne Passwort im Quelltext bei einer offline Anwendung Datenbankprogrammierung 14
Kenan89 Insert ohne Auswirkung Datenbankprogrammierung 7
D MySQL User mit nur mit lokalen Lesezugriff und ohne Phpmyadmin Datenbankprogrammierung 4
J Derby/JavaDB Zugriff ohne Entwicklungsumgebung Datenbankprogrammierung 5
M MySQL Bilddatei in MYSQL DB abspeichern, ohne lokal auf HDD zwischenzuspeichern Datenbankprogrammierung 3
Screen Ich suche eine SQLDatenbank ohne JDBC-Treiber Datenbankprogrammierung 12
T mdb Verbindung ohne Registrierung der Datenquelle im OS Datenbankprogrammierung 14
V MySQL MsSql ohne Server nutzen? Datenbankprogrammierung 2
NoXiD Access Datenbank in java einbinden ohne ODBC treiber zu erstellen Datenbankprogrammierung 5
T MySQL Zugriff ohne Angabe der Datenbank Datenbankprogrammierung 3
B MySQL-Dumpdatei ohne Batchdatei wieder einlesen Datenbankprogrammierung 48
M Mysql Delete ohne Where Klausel untersagen Datenbankprogrammierung 8
P JPA Datenbanksettings ohne persistence.xml Datenbankprogrammierung 3
E DB installieren ohne Installationsroutine Datenbankprogrammierung 4
V Delete From Tabelle, ohne vorher die Tabelle zu kennen Datenbankprogrammierung 5
P Datenbank für Java Anwendung wie SQLite ohne Installation Datenbankprogrammierung 4
M MySQL: Spalte auf einmal füllen, ohne iterieren zu müssen Datenbankprogrammierung 4
S Datenbank zugriff optimieren - zugriff ohne cursor? Datenbankprogrammierung 7
J HSQLDB ohne JDBC Datenbankprogrammierung 8
L einfache Datenbankabfrage ohne erstes Element Datenbankprogrammierung 2
D An Access Datenbank andocken ohne sie beim System anzumelden Datenbankprogrammierung 3
D ODBC Zugriff auf MDB-Datenbank, Insert Into ohne Funktion Datenbankprogrammierung 2
G Access mit Java OHNE ODBC Datenbankprogrammierung 7
B ResultSet ohne Datenbank erstellen Datenbankprogrammierung 4
G Datenbank ohne Server Datenbankprogrammierung 28
C Datenbankanbindung ohne ODBC JDBC Brücke Datenbankprogrammierung 5
R Datenbank ohne Installation (Multiuser) Datenbankprogrammierung 9
E jdbc Verbindung ohne Einrichten einer DSN möglich ? Datenbankprogrammierung 3
clemson [SQL] Abfrage --> alle Gruppen, ohne MailConfig Datenbankprogrammierung 10
O Datenbankzugriff "ohne" Server ? Datenbankprogrammierung 9
A Java und Accessdateien ohne ODBC? Datenbankprogrammierung 2
S ResultSet als Parameter an andere Klasse übergeben Datenbankprogrammierung 3
pkm PostgreSQL Kann mit mybatis einen Parameter für eine postgreSQL-Abfrage nicht übergeben. Datenbankprogrammierung 5
S MySQL SQLException Parameter index out of range (1 > number of parameters, which is 0). Datenbankprogrammierung 10
R Datenbankerstellung: Übergabe Parameter Datenbankprogrammierung 0
J JDBC SQL Statement mit Parameter Datenbankprogrammierung 7
F Oracle The parameter name [...] in the query's selection criteria does not match any parameter name d Datenbankprogrammierung 2
M Access Abfrage mit Parameter & Access/Java liefern unterschiedliche Ergebnisse Datenbankprogrammierung 2
K Hibernate Criteria Restrictions.in("...","..") - Fehlender In- oder OUT-Parameter auf Index:: 1 Datenbankprogrammierung 3
H DB auslesen (Hibernate, Query, Parameter) Datenbankprogrammierung 8
A Oracle Session Parameter per JDBC? Datenbankprogrammierung 14
S Parameter in SQL-Abfrage nutzen Datenbankprogrammierung 8
R SELECT aus hsqldb mit Parameter Datenbankprogrammierung 2
K [hibernate] show_sql: Werte der Parameter anzeigen Datenbankprogrammierung 3
R Invalid parameter bindings bei MS SQL Server Datenbankprogrammierung 2

Ähnliche Java Themen


Oben