刚开始学Jv跟着视频做了个登录界面验证结果com.microsoft.sqlserver.jdbc.SQLServerException: 索引 2 超出范围。

问题描述

com.microsoft.sqlserver.jdbc.SQLServerException:索引2超出范围。用户名:user密码:123456atcom.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:190)atcom.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setterGetParam(SQLServerPreparedStatement.java:714)atcom.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setValue(SQLServerPreparedStatement.java:723)atcom.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setString(SQLServerPreparedStatement.java:1048)atdb.SqlHelper.query(SqlHelper.java:38)atDao.UserMode.checkUser(UserMode.java:26)atDao.Index.actionPerformed(Index.java:87)代码如下-1:packageDao;importjava.awt.EventQueue;publicclassIndexextendsJFrameimplementsActionListener{privateJPanelcontentPane;privateJTextFieldtextName;privateJLabellabel;privateJTextFieldtextPsw;privateJButtonbtnNewButton;*Launchtheapplication.publicstaticvoidmain(String[]args){/***Createtheframe.*/publicIndex(){@Override//响应用户请求。publicvoidactionPerformed(ActionEvente){Objectobe=e.getSource();//判断是否点击登录按钮if(obe.equals(btnNewButton)){//取出用户名密码Stringu=this.textName.getText();Stringp=this.textPsw.getText();UserModeum=newUserMode();Stringres=um.checkUser(u,p);System.out.println("用户名:"+u+"密码:"+p);}}}代码如下-2:packageDao;importjava.sql.ResultSet;importdb.SqlHelper;/***用户对数据库的操作***/publicclassUserMode{/****@paramLoginId用户编号*@paramLoginPWD用户密码*@return*/publicStringcheckUser(StringLoginId,StringLoginPWD){SqlHelpersp=null;try{//组织sql,和参数列表Stringsql="select?fromUserswhereLoginIdaddLoginPWD";Stringparas[]={LoginId,LoginPWD};sp=newSqlHelper();ResultSetts=sp.query(sql,paras);}catch(Exceptione){//TODO:handleexception}finally{sp.close();}returnnull;}}代码如下-3:/***对数据库操作的类*对数据库的操作*调用存储过程主要写项目业务操作*/packagedb;importjava.sql.*;publicclassSqlHelper{//定义需要的对象PreparedStatementps=null;ResultSetrs=null;Connectionct=null;//应为多次引用故写出来StringdirverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";Stringurl="jdbc:sqlserver://127.0.0.1:1433;dataabaseName=MyBookShop";Stringuser="jiashao";Stringpasswd="admin";//构造函数,初始化ctpublicSqlHelper(){try{//加载驱动Class.forName(dirverName);//2.创建连接ct=DriverManager.getConnection(url,user,passwd);}catch(Exceptione){e.printStackTrace();//防止程序出错,来报错提示//TODO:handleexception}}publicResultSetquery(Stringsql,String[]paras){//数据结果都可以通过这方法得到结果try{ps=ct.prepareStatement(sql);//对sql的参数赋值for(inti=0;i<paras.length;i++){ps.setString(i+1,paras[i]);}rs=ps.executeQuery();}catch(Exceptione){e.printStackTrace();//TODO:handleexception}returnrs;}//关闭资源的方法publicvoidclose(){try{if(rs!=null)rs.close();if(ps!=null)ps.close();if(ct!=null)ct.close();{}}catch(Exceptione){e.printStackTrace();//TODO:handleexception}}}

解决方案

解决方案二:
楼主,通过debug打一下断点,跟一下代码,哪行代码出问题的,就仔细分析下上下文的变量值,应该可以得出一些结果。
解决方案三:
这年头还有人用java的swing来做界面的
解决方案四:
引用2楼secondfirstlife的回复:

这年头还有人用java的swing来做界面的

那对于新手你有什么好的建议没?
解决方案五:
引用1楼magi1201的回复:

楼主,通过debug打一下断点,跟一下代码,哪行代码出问题的,就仔细分析下上下文的变量值,应该可以得出一些结果。

这个我还真没用过debug听他们说是sql语句错了
解决方案六:
Stringsql="select?fromUserswhereLoginIdaddLoginPWD";Stringparas[]={LoginId,LoginPWD};只有一个问号,传2个参数。你是不是少一个问号
解决方案七:
select?fromUserswhereLoginIdaddLoginPWD这个where后面什么意思怎么这么写。LoginIdaddLoginPWD

时间: 2024-10-27 10:45:15

刚开始学Jv跟着视频做了个登录界面验证结果com.microsoft.sqlserver.jdbc.SQLServerException: 索引 2 超出范围。的相关文章

java-单元测试不通过,还是跟着视频做的。

问题描述 单元测试不通过,还是跟着视频做的. 这问题不知道该怎么解决了.在tomcat里有更多的错误.新手程序员.请求帮助. 解决方案 用gtester做单元测试视频专辑:JUnit单元测试培训视频 解决方案二: spring和junit没有整合,即junit无法访问spring上下文 解决方案三: spring和junit没有整合,即junit无法访问spring上下文 解决方案四: 如果是spring的话 你在junit中只能测试Service层

asp.net做登录界面不想用外部数据库,想在vwd2005中直接新建数据库,怎么实现插入数据

问题描述 各位大侠,真心求教,asp.net做登录界面不想用外部数据库,想在vwd2005中直接新建sql数据库,怎么实现向表里插入数据 解决方案 解决方案二:右键,打开表.解决方案三:vs自带的数据库的操作跟Sqlserver是一样的解决方案四:建立和打开连接的语句也是下面这样吗SqlConnectioncon=newSqlConnection("server='(local)';database='data';uid='sa';pwd='sa'");con.Open();解决方案五

大家学J2SE的时候做过哪些小项目

问题描述 大家都做个哪些啊,我最近做个了记事本,计算机,简单聊天室,感觉J2SE做界面太麻烦了..问下大家还做过什么小项目的,能锻炼基本语法... 解决方案 解决方案二:呵呵,培训的时候做个什么图书管理系统,企业招投标系统解决方案三:还在学习,什么都没做过解决方案四:学的时候什么都没做过解决方案五:跟着视频编坦克游戏...不过现在已经不做开发了.转向DBA了...解决方案六:网络扫雷,能学到很多解决方案七:呵呵几乎没有...解决方案八:网落的坦克游戏,五子棋,还有最经典的贪吃蛇解决方案九:都是带

智能家居转型恋上物联网,跟着需求做市场

首届中国智能家居发展高峰论坛日前在杭州开幕,身为主办方的浙江美好家家居有限公司这一次还带来一份大礼--全宅智能化控制系统. 智能家居近年来成为各大企业竞相争食的大蛋糕."美好家"--这家知名度并不突出的制造企业,为何能成为本次高峰论坛的主办方?又凭借怎样的好设计在智能家居的新领域占得一席之地? 转型恋上物联网 徐超龙开的天猫旗舰店,销量最好的是简易衣柜和笔记本电脑桌,这个月总共销售了9万多件.2007年以前,徐超龙经营的是一个不知名品牌的小家具,直到创立"美好家",

tomcat eclipse启动tomcat失败了,刚开始学这个,希望有人帮忙看下

问题描述 tomcat eclipse启动tomcat失败了,刚开始学这个,希望有人帮忙看下 刚开始在eclipse里面安装tomcat,tomcat放在F盘下,前面添加的步骤都按照网上教程弄了,应该没有什么错误,不过在写好代码,准备要运行的时候,不知道如何操作, 下面几张图片 不知道哪里错误了,弹出红框. 解决方案 你装的哪种tomcat?集成到eclise的tomcat不需要安装,解压后在Windows-->perferences配置一下就好了.需要安装的那个它启动是通过目录下面有个moni

刚开始学c#麻烦各位师哥师姐帮帮我

问题描述 刚开始学c#麻烦各位师哥师姐帮帮我 c#中,要使弹出的message box中的字体改变为代码中设定的,代码该怎么写?------ 解决方案 刚开始学linux常用到的命令 解决方案二: 可以自己尝试做一个类似的窗体啊 解决方案三: 继承Form,自定义一个控件

旅游网站如何运用视频做推广 经验分享

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 笔者从事旅游网站运营已经半年时间了,网络推广方式很多种,现在的互联网信息时代,在网上查一下不下上百种推广方式.笔者为什么要在这里讲视频推广呢?视频网站在网站中的权重是比较高的,你随便在搜索引擎中搜一个关键词视频title中包含这个关键词的排名非常的好! 下面就和大家说说视频制作注意事项和如何进行视频推广: 制作视频: 1.视频标题: 频标题要

html5-有关用视频做HTML网页背景的一些疑问

问题描述 有关用视频做HTML网页背景的一些疑问 <!DOCTYPE html PUBLIC ""-//W3C//DTD XHTML 1.0 Transitional//EN"" ""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd""><html xmlns=""http://www.w3.org/1999/xhtml&quo

java-问问大神们 我刚开始学面向对象 求大神帮忙解释一下

问题描述 问问大神们 我刚开始学面向对象 求大神帮忙解释一下 这是自己创建的一个类 然后有参无返回都运行成功了,就是有参数有返回值的那里出问题了 运行不了 按运行键后 控制台出的程序是别的 请问大神们这是什么原因?这是程序 求大神们帮帮忙 解决方案 输出了什么?是错误还是什么信息. 就你的程序没有问题. 解决方案二: 是不是你运行的就不是这个工程啊,你看看你选对当前工程了吗 解决方案三: 把输出的信息发出来下 解决方案四: 编译并运行的文件不对,你点击有参有反回值.java右键run试试. 解决