您的位置:程序门 -> java -> j2se / 基础类



新手求助,谢谢!


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


新手求助,谢谢![已结贴,结贴人:wearewaiting]
发表于:2007-08-08 08:46:54 楼主
我建立了一个跟sql   server   数据库连接的类       其中的方法返回的是   connection  
然后再到其他类中处理
语法没有报错   但就是连接不上   报错的内容是:
java.sql.sqlexception:   [microsoft][odbc   sql   server   driver][sql   server]必须声明变量   '@p2 '。

请问各位大侠们,着到底是数据库错误还是,程序结构错误,还是数据源配制错误???


谢谢啊   !!
发表于:2007-08-08 08:57:391楼 得分:0
程序有问题
发表于:2007-08-08 09:05:342楼 得分:20
可能是数据库的问题,也可能是程序里写入库的语句有错误。
发表于:2007-08-08 09:08:003楼 得分:0
尤其是insert语句,请楼主好好查看一下,比如说少了逗号之类的。
发表于:2007-08-08 09:42:104楼 得分:0
插入语句没有错的   ~
我用查询分析器试过的
发表于:2007-08-08 09:54:395楼 得分:0
java.sql.sqlexception:   [microsoft][odbc   sql   server   driver][sql   server]必须声明变量   '@p2 '。

看提示~~
你用了p2   却没有申明变量p2
怎么申明请参考有关资料
发表于:2007-08-08 10:00:006楼 得分:0
你用的odbc,配的是不是有问题呢?
测试下连不连的上,再在java上用呀
发表于:2007-08-08 10:21:047楼 得分:0
贴源码上来看看吧...
发表于:2007-08-08 10:43:408楼 得分:0
发下源代码看看   这问题太广泛了
发表于:2007-08-08 10:44:409楼 得分:0
//此类用于连接数据库并返回一个连接对象context

public   class   dbcon   {
        public   dbcon()   {
                try   {
                      jbinit();
                }   catch   (exception   ex)   {
                        ex.printstacktrace();
                }
        }

        private   connection   contest;
        public   connection   getconnection(){
                try   {
                        class.forname( "sun.jdbc.odbc.jdbcodbcdriver ");
                }   catch   (classnotfoundexception   ce)   {
                        ce.printstacktrace();
                }
                try   {
                        contest   =   drivermanager.getconnection( "jdbc:odbc:volunteers ", "new ", " ");
                }   catch   (sqlexception   e)   {
                          e.printstacktrace();
                }
                return   contest;
        }
        private   void   jbinit()   throws   exception   {
        }

}
发表于:2007-08-08 10:45:0810楼 得分:0
private   vector   checkconnection(string   chknap,string   chktable){
                connection   con;
                vector   result   =   new   vector();
                dbcon   dbcon   =   new   dbcon();

                try   {
                        con   =   dbcon.getconnection();
                        preparedstatement   pstmt=con.preparestatement( "select   ?   from   ?; ");
                        pstmt.setstring(1,   chknap);
                        pstmt.setstring(2,   chktable);
                        resultset   rs=pstmt.EXECutequery();
                        while(rs.next()){
                                result.addelement(rs.getstring(1).tostring());
                        }
                    }catch   (sqlexception   e)   {
                              system.out.println(e.tostring());
                    }
                  return   (result);

          }
发表于:2007-08-08 10:45:4211楼 得分:0
着就是源代码   帮忙看看     谢谢各位~
发表于:2007-08-08 11:02:2412楼 得分:0
连接sql   server   数据库(2000)首先必须是把sql   server打上补丁sp3才可以的,可以的奥迅雷上下载 
发表于:2007-08-08 12:51:4113楼 得分:0
建议楼主先别用存储过程,写个直接的select语句试试看有没有问题。
发表于:2007-08-08 15:20:2514楼 得分:0
知道问题在那里了     ~第一次发贴   谢谢各位。


快速检索

最新资讯
热门点击