用eclipse环境怎么java与sql连接

解决方案 »

  1.   

    sql指的是sqlServer吗?平常怎么连接就在eclipse里怎么写呗,要将3个驱动包导入到lib文件夹下
      

  2.   

    有一个以下java应用程序,想用eclipse把java与java连接..但不知怎么设置eclipse环境.才能连接成功 import java.sql.SQLException;
    import java.sql.Connection;
    import java.sql.Statement;
    import java.sql.ResultSet;
    import java.sql.DriverManager;
    import java.sql.Date;
    import java.util.Properties;
    import java.io.FileInputStream;
    import java.io.IOException;
    import java.io.FileNotFoundException;
    public class CreatTableTest
    {
       private Connection con;
       private String url;
       private String userName;
       private String password;
       public static void main(String[] args)
    {
          CreatTableTest test=new CreatTableTest();
      test.getProperty();
      Connection con=test.getConnection();
      test.createTable(con);
      test.getStudent(con);
       }
       public void createTable(Connection con)
    {
          try
          {
           Statement st=con.createStatement();
    String sql="CREATE TABLE student(姓名 varchar(50) NOT NULL,"+"学号 varchar(20) NOT NULL,"+
    "出生日期 datetime NOT NULL,专业 varchar(20) NULL,"+"籍贯 varchar(30) NULL)";
    System.out.println("输出的SQL语句是:");
        System.out.println(sql);
    st.execute(sql);
    sql="insert into student values('邱培光','20005010819','1984-9-16','英语','福建')";
    st.executeUpdate(sql);
    st.close();
          }
          catch (SQLException e)
          {
      e.printStackTrace();
          }
       }
       public void getStudent(Connection con)
    {
          try
          {
           Statement st=con.createStatement();
    String sql="select * from student";
    ResultSet rs=st.executeQuery(sql);
    while(rs.next())
      {
        String name=rs.getString("姓名");
    String number=rs.getString("学号");
    Date date=rs.getDate("出生日期");
    String spe=rs.getString("专业");
    String address=rs.getString("籍贯");
    System.out.println("\n姓名:"+name+"\t学号:"+number+"\t出生日期:"+date+"\t专业:"+spe+"\t籍贯:"+address);
    st.close();
    con.close();
    }
          }
          catch (SQLException e)
          {
      e.printStackTrace();
          }
       }
       public Connection getConnection()
    {
          try
          {
           con=DriverManager.getConnection(url,userName,password);
          }
          catch (SQLException e)
          {
      e.printStackTrace();
          }
      return con;
       }
       public void getProperty()
    {
       Properties prop=new Properties();
          try
          {
           FileInputStream in=new FileInputStream("driver.properties");
    prop.load(in);
    String driver=prop.getProperty("drivers");
    if(driver!=null)System.setProperty("jdbc.drivers",driver);
    url=prop.getProperty("url");
    userName=prop.getProperty("user");
    password=prop.getProperty("password");
          }
          catch (FileNotFoundException e)
          {
      e.printStackTrace();
          }
      catch(IOException e)
    {
              e.printStackTrace();   
      }
       }
    }和drivers=com.microsoft.jdbc.sqlserver.SQLServerDriver
    url=jdbc:microsoft:sqlserver://localhost:1433;
    DatabaseName=studentmanager
    user=sa
    password=411516wwd.
      

  3.   

    运行时提示以下错误:这回事呢??补丁sp4我也打了..问题依然存在::
    Error Trace in getConnection() : [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    Error: No active Connection
    java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
    at com.microsoft.jdbc.base.BaseExceptions.createException(Unknown Source)
    at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    at com.microsoft.jdbc.base.BaseExceptions.getException(Unknown Source)
    at com.microsoft.jdbc.sqlserver.tds.TDSConnection.<init>(Unknown Source)
    at com.microsoft.jdbc.sqlserver.SQLServerImplConnection.open(Unknown Source)
    at com.microsoft.jdbc.base.BaseConnection.getNewImplConnection(Unknown Source)
    at com.microsoft.jdbc.base.BaseConnection.open(Unknown Source)
    at com.microsoft.jdbc.base.BaseDriver.connect(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at java.sql.DriverManager.getConnection(Unknown Source)
    at testJDBC.SQLServerJDBCTest.getConnection(SQLServerJDBCTest.java:21)
    at testJDBC.SQLServerJDBCTest.displayDbProperties(SQLServerJDBCTest.java:51)
    at testJDBC.SQLServerJDBCTest.main(SQLServerJDBCTest.java:81)
      

  4.   

    //不使用datasource
    package com.hotel.db;import java.sql.*;
    import java.util.ArrayList;
    import java.text.SimpleDateFormat;
    import java.util.Calendar;public class MyDB {
    final String CLASSFORNAME = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    final String DRIVE = "jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=hotel2";
    final String USER = "sa";
    final String PSW = ""; private Connection conn = null; /**
     * public Statement st = null; public PreparedStatement prest = null; public CallableStatement proc = null; public ResultSet rs = null;
     */
    public MyDB() {
    try {
    Class.forName(CLASSFORNAME);
    conn = DriverManager.getConnection(DRIVE, USER, PSW);
    System.out.println("连接成功"); }
    catch (SQLException e) {
    // System.out.println(e.getMessage() + "1路径错误");
    }
    catch (ClassNotFoundException e) {
    // System.out.println(e.getMessage() + "驱动错误");
    }
    }
    }
      

  5.   

    //使用datasource
    package com.hotel.db;import java.sql.*;
    import javax.naming.*;
    import javax.sql.DataSource;//一个用于查找数据源的工具类。
    public class DataSourceConn {
    public static synchronized Connection getConnection() throws Exception {
    try {
    Context initCtx = new javax.naming.InitialContext();
    Context envCtx = (Context) initCtx.lookup("java:comp/env");
    DataSource ds = (DataSource) envCtx.lookup("jdbc/hotel");
    return ds.getConnection();
    }
    catch (SQLException e) {
    throw e;
    }
    catch (NamingException e) {
    throw e;
    }
    }
    }