| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1232 人关注过本帖
标题:关于JDBC的程序,谁能帮小弟解决一下问题,谢谢~!
只看楼主 加入收藏
314104507
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-6-16
收藏
 问题点数:0 回复次数:8 
关于JDBC的程序,谁能帮小弟解决一下问题,谢谢~!
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
import
import
public class CreatTableTest
{
   private  Connection con;
   String URL ;
   String userName = "";
   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(姓名 carchar(12) NOT NULL, 学号 varchar(10) NOT NULL, " +
      "出生日期 datetime NOT NULL,专业 varchar(10) NOT NULL,籍贯 carchar(30) NULL)";
     System.out.println("输出的SQL语句是:");
     System.out.println(sql);
     st.execute(sql);
     sql = "insert into student values('俊峰','20021022','1984-01-13','英语','山西太原')";
     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 mber = rs.getString(1);
               String name = rs.getString("姓名");
               String Number = rs.getString("学号");
               Date tt = rs.getDate("出生日期");
               String spe = rs.getString("专业");
               String address = rs.getString("籍贯");
               
               System.out.println("\n姓名"+name + "\t学号" + Number + "\t出生日期" + tt + "\t专业" + spe + "\t籍贯" + address);
           }
           st.close();
           con.close();
       }
       catch(SQLException e)
       {
           e.printStackTrace();
       }
      
      
   }
   public Connection getConnection()
   {
      
       try
       {
           //Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
           con = DriverManager.getConnection(URL,userName,password);
           
       }
      
       /*catch(ClassNotFoundException ex )
       {
           ex.printStackTrace();
       }*/
       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 drivers = prop.getProperty("drivers");
     if(drivers != null)
        System.setProperty("jdbc.drivers",drivers);
        URL = prop.getProperty("url");
        userName = prop.getProperty("user");
        password = prop.getProperty("password");
    }
    catch(FileNotFoundException e)
    {
     e.printStackTrace();
    }
    catch(IOException e)
    {
     e.printStackTrace();
    }
   }
}
这个程序出现的错误是:
Driver.properties (系统找不到指定的文件。)
        at (Native Method)
        at (FileInputStream.java:106)
        at (FileInputStream.java:66)
        at CreatTableTest.getProperty(CreatTableTest.java:98)
        at CreatTableTest.main(CreatTableTest.java:20)
java.sql.SQLException: The url cannot be null
        at java.sql.DriverManager.getConnection(DriverManager.java:489)
        at java.sql.DriverManager.getConnection(DriverManager.java:171)
        at CreatTableTest.getConnection(CreatTableTest.java:79)
        at CreatTableTest.main(CreatTableTest.java:21)
Exception in thread "main" java.lang.NullPointerException
        at CreatTableTest.createTable(CreatTableTest.java:30)
        at CreatTableTest.main(CreatTableTest.java:23)
什么地方出现了错误,那位大哥能帮我解决一下,小弟万分感激!
搜索更多相关主题的帖子: JDBC 
2005-06-30 13:26
314104507
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-6-16
收藏
得分:0 
我想问各位大哥们,是不是在编写程序时还得建立一个关于SQL SEVER的数据库呢?
2005-06-30 13:49
freedxw
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2005-3-31
收藏
得分:0 
需要先在数据库中建立一个表,再建立数据源,然后建立JDBC-ODBC桥接器:
try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){}
连接到数据库:
try{
    Connection con = DriverManager.getConnection("jdbc:odbc:数据源的名字","数据源login名","数据源的密码");
获取连接
    Statement sta = con.creaeStatement();
执行SQL语句,得到结果集
    ResultSet rs = sta.executeQuery("SQL语句");
}
catch(SQLException e){}

天不知道,地知道, 你不知道,我知道!
2005-07-01 08:25
jeremydomett
Rank: 2
等 级:新手上路
威 望:3
帖 子:312
专家分:0
注 册:2004-6-10
收藏
得分:0 
应该是...要么你用sql server 的jdbc驱动.

热爱编程........永不放弃.........
2005-07-01 12:01
kingarden
Rank: 2
等 级:论坛游民
威 望:1
帖 子:517
专家分:40
注 册:2004-12-8
收藏
得分:0 
按照三楼的做.若还不行,你检查下rt.jar包中有没你需要调用的那个SQL驱动包?

〖ΦγЙ┅给梦一把梯子,现实与梦想之间的距离即可忽略,不可跨越的迢迢银河举步便可迈过Й┅Φ〗
2005-07-01 16:56
314104507
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-6-16
收藏
得分:0 
我把Driver.properties文件与这个程序放到同一个目录中,解决了这个问题:
Driver.properties (系统找不到指定的文件。)
        at (Native Method)
        at (FileInputStream.java:106)
        at (FileInputStream.java:66)
        at CreatTableTest.getProperty(CreatTableTest.java:121)
        at CreatTableTest.main(CreatTableTest.java:27)
但是又出现了这个问题,那位大哥能帮小弟解决一下:
java.sql.SQLException: No suitable driver
        at java.sql.DriverManager.getConnection(DriverManager.java:532)
        at java.sql.DriverManager.getConnection(DriverManager.java:171)
        at CreatTableTest.getConnection(CreatTableTest.java:103)
        at CreatTableTest.main(CreatTableTest.java:28)
Exception in thread "main" java.lang.NullPointerException
        at CreatTableTest.createTable(CreatTableTest.java:41)
        at CreatTableTest.main(CreatTableTest.java:29)
2005-07-01 17:01
kingarden
Rank: 2
等 级:论坛游民
威 望:1
帖 子:517
专家分:40
注 册:2004-12-8
收藏
得分:0 
java.sql.SQLException: No suitable driver

错误提示没有合适的驱动?说明你的SQL驱动包中没有它所需的驱动,你的数据库是MS SQL?还是mysql?MSSQL的驱动系统自带,不过你也可以到SUM的主页下个JDBC;若是mysql的话,系统不带驱动程序,你得自己去下驱动程序,然后把下的驱动包解压缩后放入到rt.jar中就可以了

〖ΦγЙ┅给梦一把梯子,现实与梦想之间的距离即可忽略,不可跨越的迢迢银河举步便可迈过Й┅Φ〗
2005-07-01 17:23
314104507
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-6-16
收藏
得分:0 
kingarden你好! 我已经从SUN网站上下载下JDBC来了,我也按你说的,解压后放到了rt.jar解压后的文件中,但是还是出现以上的错误,那是什么原因?我想问一下,怎么数据库还要驱动吗?是什么驱动,小弟在这里不明白,希望高人能指点指点!谢谢!
2005-07-04 11:24
314104507
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2005-6-16
收藏
得分:0 
我的驱动已经安装好了,但是出现的错误还是和以前一样,是什么原因!
2005-07-04 15:31
快速回复:关于JDBC的程序,谁能帮小弟解决一下问题,谢谢~!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018527 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved