当前位置: 首页 > 知识库问答 >
问题:

使用tomcat的jsp页面sql错误,eclipse错误=:索引1超出范围

翟弘
2023-03-14

我的jsp页面有问题。我正在使用:-

-Tomcat 8.0.20

-Eclipse Java EE luna SR2

-Microsoft SQL server 2005

-使用管理工作室Express做我的数据库工作

这是一个小问题,因为我正在学习在jsp页面上运行查询。我偶然发现了这个问题,想知道是否有人可以帮助我。

这是我的代码片段

 <sql:setDataSource var="snapshot" river="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
 url="jdbc:sqlserver://SANGKARAN;database=ILMU;" 
 user="*******" password="******"/>

<c:set var="empId" value="102"/>

<sql:update dataSource="${snapshot}" var="count">
 UPDATE Employees SET last VALUES = 'Ali'
 <sql:param value="${empId}" />
</sql:update>

这就是错误所在

org.apache.jasper。JasperException:javax.servlet。ServletException:javax.servlet.jsp.jspeException:

更新员工设置的最后值='Ali'

索引1超出范围。org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:548)org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:454)org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:396)org.apache.jasper.servlet.JspServlet.service(JspServlet.java:340)javax.servlet.http.HttpServlet.service(HttpServlet.java:725)org.apache.tomcat.websocket.server.WsFilter.do过滤器(WsFilter.java:52)

根本原因

_jspSQLServerException:索引1超出范围。_jspx_meth_sql_005fupdate_005f0SQLServerE_jspFromDriverError(未知来源)_jspServiceSQLServerPrearedSrapper.serviceGetParam(未知来源)rapper.java:431SQLServerPrearedSorg.apache.jasper.servlet.对象(未知来源)ervlet.serviceUpdateTagServlet.java:396参数(UpdateTagSorg.apache.jasper.servlet.)ervlet.serviceUpdateTagServlet.java:340EndTag(UpdateTagSjavax.servlet.http.)org.apache.jsp.updatetestjavax.servlet.http.ervlet.service(updatetest_jsp.java:274)org.apache.jsp.updatetestervlet.java:725org.apache.jasper.servlet.(updatetest_jsp.java:145)org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)com.microsoft.sqlserver.jdbc.HttpScom.microsoft.sqlserver.jdbc.(HttpSxception.make)com.microsoft.sqlserver.jdbc.JspServletWtatement.setter(JspServletWcom.microsoft.sqlserver.jdbc.)tatement.setJspSorg.apache.taglibs.standard.tag.common.sql.JspFile(JspSupport.set)upport.java:262JspSorg.apache.taglibs.standard.tag.common.sql.(JspSupport.do)upport.java:165HttpServlet. service(HttpServlet. java: 725)org. apache. tomcat. webocket. server。WsFilter. doFilter(WsFilter. java: 52)

我真的需要一些帮助。

共有1个答案

乌翰学
2023-03-14

没关系,我已经弄清楚了。我的查询和参数语法是错误的。我所要做的就是像这样改变它,它就可以工作了。

<sql:update dataSource="${snapshot}" var="count">
UPDATE Employees SET last = ?
            WHERE id='${empId}'
<sql:param value="${lastname}" />
</sql:update>

仅此而已。我希望这能帮助遇到同样问题的人。非常感谢。

 类似资料:
  • 我使用带有AnyLogic的外部数据库来检查数据库中是否存在数据。如果没有,那么我需要插入并执行另一个操作。然而,我得到了这个错误 jdbc。SQLServerException:索引1超出范围。 这是我的代码。 下面是完整的错误消息

  • 我已经使用创建了“CfnUserPool”对象https://docs.aws.amazon.com/cdk/api/latest/python/aws_cdk.aws_cognito/CfnUserPool.html aws文件。 我想获取UserPool的“Pool Id”。其Id值为“us-east-1_4kxxxxxx”。我使用python尝试了很多选项来获取这个值,但都没有成功。 所以我

  • 在com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191)在com.microsoft.sqlserver.jdbc.SQLServerPrearedStatement.setterGetParam(SQLServerPrearedStatement.java:9

  • 例:“at”和“tack”应该返回true,“tree”和“ere”应该返回false。 在查看注释后编辑,我的新代码现在是这样的。它总是返回false,即使带有“tree”和“tree”。

  • 错误 ()1中的索引器错误回溯(最近一次调用)---- ~/Documents/PhD/IntelliSys19/journal/ColdStart_实验/相似性_函数。用户中u2的装饰矩阵中的py()145:146评级1=np。nan_to_num(np.array(user_ratings_matrix.iloc[u1-1].values))-- ~/anaconda3/lib/python3

  • 我试着运行这个: 但是得到这个错误: 回溯(最后一次调用): 文件“C:\Users\Shakh\Desktop\Hello3.py”,第4行,在 打印(“Hallo”,sys.argv[1]) 索引器:列表索引超出范围