webForumDet fria alternativet

Nybörjare Databaskoppling

2 svar · 270 visningar · startad av Boorg

BoorgMedlem sedan okt. 2004409 inlägg
#1

Hej.
är en nybörjare på Java. Ochj ska hämta ut info ur en databas.

import java.awt.*;
import javax.swing.*;
import java.sql.*; 

public class Miljonar extends JFrame implements ActionListener {

Class.Miljonar("sun.jdbc.odbc.JdbcOdbcDriver");
String myDB = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=C:data.MDB";
Conn = DriverManager.getConnection(myDB,"","");

String sql = "Select f_ID, f_Pris From t_Niva Order By f_ID";
ResultSet Re = st.executeQuery(sql);
ResultSetMetaData metaData = resultSet.getMetaData();

For(int = i; re.getString("f_ID") == i; i++){
      out.print(Re.getString("f_Pris"));
	}

Conn.close;
}
pettssonMedlem sedan jan. 20021 122 inlägg
#2

Tips: Ange vad som är fel ;)
Två saker jag reagerar på:

  1. Du har ingen metod, du försöker köra direkt från klassen. Går ej. Lägg in public static void main(String[] args) { //Din kod } efter klassdefinitionen.
  2. "ResultSet Re = st.executeQuery(sql);" Vad är st? Den defineras inte i den kod du visar.

Får du fler felmeddelanden efter att ha löst det där?

missModestyMedlem sedan apr. 2005254 inlägg
#3

Nu var det ett tag sen jag gjorde något som har med databaskoppling att göra men jag hittade några saker som kanske kan hjälpa.

1. Connection con = DriverManager.getConnection(myDB,"","");
(men har du varken namn eller lösenord till databasen?)

2. Du måste skapa ett Statement-objekt för att kunna använda
executeQuery(sql) och sql är en String. Du har två alternativ.

2.1 Statement execStat = con.createStatement();
ResultSet Re = execStat.executeQuery(sql);

2.2 PreparedStatement execStat = con.createStatement(sql);
ResultSet Re = execStat.executeQuery();

134 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)