用java做了一个注册页面,其中一部分内容在下面
我有如下几点不明白(我刚学什么也不懂滴)
这个程序做的是客户端和服务器端的联系,所以就要用到URL,我就很不明白jdbc:microsoft:sqlserver://localhost:1433;database=aa;";这句写得是什么意思?
还有那个jbdc和obdc有什么不同?database是指建的数据源的名还是数据库的名?建的名也太多了都乱套了
我在网上看见driver有两种写法。请问区别是什么?我编译后Eclipse提示
java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这是怎么回事?
PreparedStatement prs=con.prepareStatement("insert into mydb这句话是把用户信息插入表中那mydb是指数据库的名还是表的名?如果是表的名,那怎么知道插入的是哪个数据库的?
暂时就想到这么多!哎,感觉自己太笨了!谢谢了各位         Connection con=null;
private String url="jdbc:microsoft:sqlserver://localhost:1433;database=aa;";
private String sid; 
private String userName ="sa";
private String sqlpass ="";
private String driver="com.microsoft.jdbc.sqlserver.SQLServerDriver"; 
        
         if(e.getSource()==regBtn){
this.getinfo();

String sName=name.trim();
String sPassword=password.trim();
String sSex=sex.trim();
String sAge=age.trim();
String sEmail=email.trim(); try{
Class.forName(driver); //指定JDBC驱动程序
     con = DriverManager.getConnection(url,userName,sqlpass);
     PreparedStatement prs=con.prepareStatement("insert into mydb(id,password,sex,age,email) values(?,?,?,?,?)");
     prs.setString(1,sName);
     prs.setString(2,sPassword);
     prs.setString(3,sSex);
     prs.setString(4,sAge);
     prs.setString(5,sEmail);
   
     prs.executeUpdate();
     JOptionPane.showMessageDialog(this,"注册成功");
con.close();
}
catch(ClassNotFoundException ec){
System.out.println(ec) ;
}
catch(SQLException es){
System.out.println(es) ;
}
catch(Exception ee){
System.out.println(ee) ;
}

}

解决方案 »

  1.   

    没导驱动包,mydb是表名,插入哪个数据库,由连接配置决定。建议从基础看起,一步步来。
      

  2.   


    public class Connection_Database {
     
     //加载驱动
     private final String DBDRIVER="com.microsoft.jdbc.sqlserver.SQLServerDriver";
     
     //连接数据库的路径
     private final String DBURL="jdbc:microsoft:sqlserver://localhost:1433;databasename=pubs";
      
     //连接数据库的用户名
     private final String DBUSER="sa";
     
     //连接数据库的密码
     private final String  DBPASSWORD="sa";
     
     //连接数据库的对象
     private Connection conn=null;
     
     public Connection_Database(){
      
      try{
        Class.forName(DBDRIVER);
        
        this.conn=DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);  }catch (Exception e){
       
       e.printStackTrace();
      }  
     }
     //取得数据库连接
     public Connection getConnection(){
      
      return this.conn;
     }
     //关闭数数据库连接
     public void close(){
      
      try{
       
       this.conn.close();
       
      }catch(Exception e){}
     } 
    } jdbc驱动放入到项目里面没有————这个驱动一定要的,没有不能连接ODBC:开放式数据库连接 是一个编程接口,它允许程序访问使用结构化查询语言 (SQL) 作为数据访问标准的数据库管理系统中的数据
    在控制面板:有个“数据源 (ODBC)”图标JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问
      

  3.   

    1.jdbc和odbc区别:
    http://topic.csdn.net/t/20030516/00/1790688.html2.
    jdbc:microsoft:sqlserver://localhost:1433;database=aa
    表示连接的sqlserver数据库,localhost:本机   1433:数记库服务的端口   database:数据库名4.driver有两种写法,是因为连接的数据库不同,比如oracle,mysql,sqlserver等5.java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这是怎么回事?
    答:没有加驱动包或sp3补丁6.insert into mydb
    答:mydb是表名,连接的数据库是database=aa ,aa为数据库名.ps:lz你的慢慢来,找点基础的书籍看.
      

  4.   

    jdbc:microsoft:sqlserver://localhost:1433;database=aa;";这句写得是什么意思? 
    连接本地数据库(如果你的hosts没被改过的话,默认是127.0.0.1),数据库名字为"aa"。还有那个jbdc和obdc有什么不同?database是指建的数据源的名还是数据库的名?
    你自己去搜下,我说也说不清楚,搜的时候还能学到其他很多东西java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这是怎么回事? 
    驱动没找到,确保驱动放在/项目/WEB-INF/lib/里面, 光在eclipse里面设置build path jar是没用的PreparedStatement prs=con.prepareStatement("insert into mydb这句话是把用户信息插入表中那mydb是指数据库的名还是表的名?如果是表的名,那怎么知道插入的是哪个数据库的? 
    插入表中的,因为上面你连接的时候已经指定了数据库是"aa"
      

  5.   

    java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这是怎么回事?
    ------------------------------------------------------------------------------------
    您要放到web-inf下
      

  6.   

    下个SQL2005驱动包,放你项目的LIB路径下
      

  7.   

    加那三个驱动包   放到web-inf下   问题肯定就解决啦
      

  8.   

    楼主去下载个jdbc的视频看看,从基本开始,很快就懂了
      

  9.   

    jdbc:microsoft:sqlserver://localhost:1433;database=aa;"
    localhost 是主机名 你也可以放你的IP 地址 
    1433 是端口号  当访问数据库时候的电脑端口 电脑有65535 个端口 SQL Server 默认占用1433口
    database=aa     aa是你要访问的数据库的名字JDBC 是JAVA直接和数据库连接的  ODBC 是通过数据源连的 从性能来说 JDBC  更胜一筹
      

  10.   

    这个程序做的是客户端和服务器端的联系,所以就要用到URL,我就很不明白jdbc:microsoft:sqlserver://localhost:1433;database=aa;";这句写得是什么意思?
    还有那个jbdc和obdc有什么不同?database是指建的数据源的名还是数据库的名?建的名也太多了都乱套了 
    我在网上看见driver有两种写法。请问区别是什么?我编译后Eclipse提示 
    java.lang.ClassNotFoundException: com.microsoft.jdbc.sqlserver.SQLServerDriver这是怎么回事? 
    PreparedStatement prs=con.prepareStatement("insert into mydb这句话是把用户信息插入表中那mydb是指数据库的名还是表的名?如果是表的名,那怎么知道插入的是哪个数据库的? 
    答:这是用来连接SQL数据库的,localhost就是自己的主机,1433是端口号,SQL的默认端口。这前面部分照着写就行了。
        database是你要连接的数据库名称,一般后面还要给出登陆账号和密码的,默认的为“sa”,密码为空,即“”。注意只是引号,里面什么都没有(不是空格符哦!)。
        编译错误是因为没有引入驱动,SQL的类包为:msutil.jar,msbase.jar,mssqlserver.jar,可以去www.msn.com下载。
        insert into mydb那里是表名,就在刚才写的database中。