Forbinde til MS SQL Server
Hej,Jeg er helt ny til JAVA, men programmerer til daglig i en række andre sprog.
Jeg skal lave et plugin til et eksisterende program. Jeg skal have forbindelse til en MS SQL Server.
Jeg bruger NetBeans IDE 5.0 som udviklingstool.
Jeg har hentet MS JDBC, men ved ikke helt hvordan det skal bruges/hvor det skal ligge/hvordan jeg inkluderer det
Jeg har følgende klasse som jeg har fundet her på siden:
/*
* datalayer.java
*
* Created on 27. september 2006, 14:39
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package dbapp;
import java.sql.*;
import com.microsoft.sqlserver.jdbc.*;
/**
*
* @author tm
*/
public class datalayer extends Object
{
/** Creates a new instance of datalayer */
public datalayer ()
{
}
private Connection con=null;
/** Creates new DataBase */
public boolean open(String dbDriverName, String dbClassName, String user, String pass)
{
// System.out.println("************************************************************************");
try
{
if(con==null)
{
Class.forName(dbDriverName).newInstance();
con = DriverManager.getConnection(dbClassName, user, pass);
// System.out.println("con = "+con);
}
}
catch (SQLException e)
{
e.printStackTrace(System.out);
return false;
}
catch (ClassNotFoundException e)
{
e.printStackTrace(System.out);
return false;
}
catch (InstantiationException e)
{
e.printStackTrace(System.out);
return false;
}
catch (IllegalAccessException e)
{
e.printStackTrace(System.out);
return false;
}
return true;
}
public void close()
{
if(con!=null)
{
try
{
con.close();
con=null;
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
}
public int doUpdate(String sql)
{
if(con!=null)
{
try
{
long time=System.currentTimeMillis();
Statement stat=con.createStatement();
// System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms "+sql);
return stat.executeUpdate(sql);
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
return 0;
}
public ResultSet doQuery(String sql)
{
if(con!=null)
{
try
{
long time=System.currentTimeMillis();
Statement stat=con.createStatement();
// System.out.println("SQL Update = "+(System.currentTimeMillis()-time)+" ms "+sql);
return stat.executeQuery(sql);
}
catch (SQLException e)
{
e.printStackTrace(System.out);
}
}
return null;
}
}
_________________________________________________________
Den klasse har jeg så extended med denne:
/*
* db.java
*
* Created on 27. september 2006, 14:56
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package dbapp;
/**
*
* @author tm
*/
public class db extends datalayer
{
/** Creates a new instance of db */
public db ()
{
}
public boolean open()
{
return super.open("com.microsoft.sqlserver.jdbc","jdbc:sqlserver://dom02dk;databaseName=Autodial;integratedSecurity=true","sa","");
}
}
____________________________________________________________
Det er sikkert her der er noget galt:
super.open("com.microsoft.sqlserver.jdbc","jdbc:sqlserver://dom02dk;databaseName=Autodial;integratedSecurity=true","sa","");
Jeg kalder hele molevitten fra en form:
db tm = new db();
tm.open ();
ResultSet q1 = tm.doQuery ("SELECT UserEmail FROM tblUser WHERE ID=2");
try
{
JOptionPane.showMessageDialog (null, jTextField1.getText (), q1.getString("UserEmail"), JOptionPane.INFORMATION_MESSAGE);
}
catch (SQLException sqlE)
{
}
________________________________________________________
Mit spørgsmål kan forsimples til at være:
hvordan opretter jeg forbindelse til en MS SQL Server og hiver data ud?
Mvh
Telep
