不显示删除回复显示所有回复显示星级回复显示得分回复 com.microsoft.sqlserver.jdbc.SQLServerException: 索引 1

woxiuqiaokeli 2010-01-03 12:06:15
各位大侠 帮帮忙吧 实在不知哪出错了
com.microsoft.sqlserver.jdbc.SQLServerException: 索引 1 超出范围。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setterGetParam(Unknown Source)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.setString(Unknown Source)
at cn.com.chengang.swt.Book$10.delt(Book.java:391)
at cn.com.chengang.swt.Book$10.widgetSelected(Book.java:372)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:90)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:66)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:928)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3348)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2968)
at cn.com.chengang.swt.Book.main(Book.java:461)
索引 1 超出范围。

我的程序:
// 加载JDBC驱动
String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=library";
// 连接服务器和数据库library
String userName = "sa"; //默认用户名
String userPwd = "123"; //密码
Connection dbConn = null;
PreparedStatement stmt=null;
String BookNOTexts=BookNOText.getText().trim();

try {
Class.forName(driverName);
dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
stmt=dbConn.prepareStatement("delete from Book where BookNO=?");
stmt.setString(1,BookNOTexts);
stmt.executeUpdate();
int res=stmt.executeUpdate();
} catch (ClassNotFoundException a) {
System.out.println(a.getMessage());
} catch (SQLException edd) {
edd.printStackTrace();
System.out.println(edd.getMessage());
} finally{
try {
stmt.close();
dbConn.close();
} catch (SQLException a) {
// e.printStackTrace();
}
}
...全文
67 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
woxiuqiaokeli 2010-01-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 hyowner 的回复:]
stmt.setString(1,BookNOTexts);换成stmt.setString(0,BookNOTexts);应该就这的问题了
[/Quote]
它应该是0 sql server
谢谢啦 我那问号写成英文的就好了
woxiuqiaokeli 2010-01-03
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 baiyu123 的回复:]
stmt.executeUpdate();
int res=stmt.executeUpdate();
可能是执行了2次
[/Quote]
谢谢啦 我那问号写成英文的就好了
hyowner 2010-01-03
  • 打赏
  • 举报
回复
stmt.setString(1,BookNOTexts);换成stmt.setString(0,BookNOTexts);应该就这的问题了
学习Java中 2010-01-03
  • 打赏
  • 举报
回复
stmt.executeUpdate();
int res=stmt.executeUpdate();
可能是执行了2次
先看效果: https://renmaiwang.cn/s/jkhfz Hue系列产品将具备高度的个性化定制能力,并且借助内置红、蓝、绿三原色LED的灯泡,能够混合生成1600万种不同色彩的灯光。 整个操作流程完全由安装于iPhone上的应用程序进行管理。 这一创新举措为智能照明控制领域带来了新的启示,国内相关领域的从业者也积极投身于相关研究。 鉴于Hue产品采用WiFi无线连接方式,而国内WiFi网络尚未全面覆盖,本研究选择应用更为普及的蓝牙技术,通过手机蓝牙与单片机进行数据交互,进而产生可调节占空比的PWM信号,以此来控制LED驱动电路,实现LED的调光功能以及DIY调色方案。 本文重点阐述了一种基于手机蓝牙通信的LED灯设计方案,该方案受到飞利浦Hue智能灯泡的启发,但考虑到国内WiFi网络的覆盖限制,故而选用更为通用的蓝牙技术。 以下为相关技术细节的详尽介绍:1. **智能照明控制系统**:智能照明控制系统允许用户借助手机应用程序实现远程控制照明设备,提供个性化的调光及色彩调整功能。 飞利浦Hue作为行业领先者,通过红、蓝、绿三原色LED的混合,能够呈现1600万种颜色,实现了全面的定制化体验。 2. **蓝牙通信技术**:蓝牙技术是一种低成本、短距离的无线传输方案,工作于2.4GHz ISM频段,具备即插即用和强抗干扰能力。 蓝牙协议栈由硬件层和软件层构成,提供通用访问Profile、服务发现应用Profile以及串口Profiles等丰富功能,确保不同设备间的良好互操作性。 3. **脉冲宽度调制调光**:脉冲宽度调制(PWM)是一种高效能的调光方式,通过调节脉冲宽度来控制LED的亮度。 当PWM频率超过200Hz时,人眼无法察觉明显的闪烁现象。 占空比指的...

58,446

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧