02. november 2001 - 13:44Der er
44 kommentarer og 2 løsninger
Driver til sql server 7
hej Alle Jeg leder med lys og lygte efter en lille streng.. Jeg skal oprette en forbindelse til en sql server 7.0 fra min applet der er på samme server.
her er min åbnings replik til databasen (man skal jo score engang imellem..)
con = DriverManager.getConnection (initString,\"serviceTlf\",\"service\"); //myform.setLabel(\"Efter con\");
Er der en der ved hvad det er jeg gør forkert ??? jeg har en ide om at det er dbDriverName der er forkert... jeg ved ikke hvad der skal stå i denne streng. Jeg har lavet en System dsn der virker.... HJÆLP Med venlig hilsen Morten Skovborg
jdbcodbcdriveren ligger default i dit JDK fra version 1.1 op ogefter tror jeg.
Du skal heller ikke registrere den med den, du skal bare bruge din almindelige database driver. Java vil så bruge jdbc bridgen til at gå igennem windows og videre til driveren... derfor er det lidt langsomt :)
ja, nu går det fremad men jeg kan kun lave en connection igennem jbuilder men ikke når jeg kører appletten \'live\' hverken på serveren eller lokalt på min maskine... Hvis jeg kan køre appletten live igennem jubilder så må min odbc være sat rigtigt op... eller hva\'
hvis det virker fra builder men ikke fra appleten, tyder det på din applet ikke kan finde en eller flere klasser.
I din html fil hvor du loader applet sæt \'codebase=\' den absolute path hvor dine klasser ligger, og placer også din driver der, hvis den er som jar, prøv evt. at pakke den ud.
jeg kan nok se selve appletten og den modtager også svar fra dbhandler det er derfor kan den vel nok finde klassen... Med Venlig hilsen Morten Skovborg
public class theForm extends Frame {//implements ActionListener { private dbHandler MyDbConn = new dbHandler();
private int projId;
private Button butOk = new Button(\"Gem\");
private Label lblHeadLine = new Label(); private Label lblProjFirma = new Label(); private Label lblProjNote = new Label(); private Label lblMelding = new Label(); private Label lblWeb = new Label(); private Label lblEmail = new Label(); private Label lblProjTlf = new Label(); private Label lblKontaktPerson = new Label();
private Label lblProjFirmaOut = new Label(); private Label lblProjNoteOut = new Label(); private Label lblMeldingOut = new Label(); private Label lblWebOut = new Label(); private Label lblEmailOut = new Label(); private Label lblProjTlfOut = new Label(); private Label lblKontaktPersonOut = new Label();
private Label lblNavn = new Label(); private Label lblAdr = new Label(); private Label lblBy = new Label(); private Label lblPostNr = new Label(); private Label lblTlf = new Label();
private Label lblNavnOut = new Label(); private Label lblAdrOut = new Label(); private Label lblByOut = new Label(); private Label lblPostNrOut = new Label(); private Label lblTlfOut = new Label();
private TextArea txtAreaNote = new TextArea();
// private ComboBox comBoxProdukter = new combobox
private TextField txtNavn = new TextField(80); private TextField txtAdr = new TextField(80); private TextField txtBy = new TextField(80); private TextField txtPostNr = new TextField(4); private TextField txtTlf = new TextField(12);
public theForm() { projId=1; setLayout(null); setVisible(false); setLocation(50,50); setSize(350,400); setBackground(Color.lightGray); Font f=new Font(\"SansSerif\",Font.PLAIN,12); Font TF=new Font(\"Algerian\",Font.BOLD+Font.ITALIC,20); Font MyF=new Font(\"Algerian\",Font.BOLD+Font.ITALIC,12); //*******************************************************************// //Info for Firma
Din classpath kan du se ved at skrive echo %classpath% i en DOS prompt. Her skulle der gerne være et link til det SDK eller JRE som du muligvis har installeret.
Hvis du ikke har, så bruger den Microsoft\'s version af Java når du kører applets. Den sutter lidt, men jeg syntes det lyder ret mærkeligt at den ikke kan finde JdbcOdbc-driveren da jeg er rimelig sikker på det er den del af Java API\'et fra version 1.1 som selv Microsoft supporter.
Der må være et eller andet jeg har misset eller du ikke har fortalt, for den driver skulle altså virke.
når jeg skriver som du siger så får jeg svaret %classpath% og intet andet... #¤\"¤#¤\"#¤)
undskyld mit sprog det som undre mig er at jeg kan få adgang til databasen igennem jbuilder uden problemer men når jeg forsøger uden altså at køre appletten live så får jeg den omtalte fejl... kan det være fordi jeg benytter win2000 ??? microsoft elsker jo java (C:
Nu har jeg lige set at den driver ligger som en del af JDK\'et i filen C:\\jdk1.3\\jre\\lib\\rt.jar så hvis du har sat din classpath op til at bruge denne fil så skulle det virke!!
Det her er sug mærkeligt jeg skiftede dirver nu virker det ikke i jbuilder men nok live... her er hvad jeg ændrede : if(con==null) { //String initString = \"jdbc:odbc:myDB\"; String initString = \"JDBC:ODBC:MyDbJava\"; try { // Class.forName(\"sun.jdbc.odbc.JdbcOdbcDriver\"); Class.forName (\"com.ms.jdbc.odbc.JdbcOdbcDriver\"); } catch (Exception e) { System.out.println(\"Failed to load JDBC/ODBC driver.\"); return \"Driver load = \" + e; } jeg ænderede altså Class.forName til Class.forName (\"com.ms.jdbc.odbc.JdbcOdbcDriver\"); Mærkeligt... ikke sandt. Nå, men nu virker det altså jeg skal bare huske at ændre det tilbage når jeg programmere
Mange tak for hjælpen jeg vil forsøge om det er mulig at forhøje pointene så i får 100 hver men bær lige over med mig hvis det ikke lykkes.
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.