1. 问题描述
    执行到 preparedStatement.setObject(1, “1111”);
    出现报错 :[Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度
  2. 解决方法
 // preparedStatement.setObject(1, "1111");        // 会报错 [Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度// 改成 setBytes() 的方式preparedStatement.setBytes(1, "111很好看".getBytes(StandardCharsets.UTF_16LE));
  1. 原因分析
    具体什么原因也不清楚,大概就是:不使用Object等类型,改用 bytes 字节数组。

    因为Jdk 1.6/7在64位操作系统上JDBC-ODBC桥上的Bug,导致在调用ResultSet.getObject()/getString()的时候随机并且不定时的报出 [Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度 这个错误。并不是一定会报错,可能是正常的运行了一段时间之后才报出来。

    出处:https://blog.51cto.com/u_15127605/4234309

4.简单完整的 demo

        // 加载驱动Class.forName("org.objectweb.rmijdbc.Driver").newInstance();// 连接 Connection Connection connection = DriverManager.getConnection(url);// 预编译 PreparedStatement PreparedStatement preparedStatement = connection.prepareStatement("insert into triode (part_number,name) values (?,?)");// 改成 setBytes() 的方式preparedStatement.setBytes(1, "111很好看".getBytes(StandardCharsets.UTF_16LE));// StandardCharsets.UTF_16LE   乱码的话,再试试其它的preparedStatement.setBytes(2, "222靠路口".getBytes(StandardCharsets.UTF_16LE));preparedStatement.addBatch();preparedStatement.executeUpdate();// 关闭操作if (preparedStatement != null) {preparedStatement.close();}if (connection != null) {connection.close();}

参考文章:关于PreparedStatement.addBatch()方法
https://blog.csdn.net/blueling51/article/details/6928755

报错:[Microsoft][ODBC 驱动程序管理器] 无效的字符串或缓冲区长度相关推荐

  1. python连接sqlServer,报错:[IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    1. 在jupyter notebook连接sqlServer报错 报错信息:InterfaceError: ('IM002', '[IM002] [Microsoft][ODBC 驱动程序管理器] ...

  2. [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配

    网页显示的出错内容: Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005' [Microsoft][ODBC 驱动程序管理器] 在指定的 D ...

  3. [Microsoft] [ODBC驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 QODBC3:不能连接

    这个问题是我用一个登录程序连接SQLServer数据库时出现的错误,但是根据网上的其他教程来做,依旧没有解决,网上大部分都说要来设置ODBC数据源管理程序,"要用系统DSN". 下 ...

  4. Qt程序连接Access数据库,出现“[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 QODBC3: Unable to connect“错误的解决办法

    Qt程序连接Access数据库,出现 1."[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 QODBC3: Unable to connect&q ...

  5. odbc java 驱动程序_java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配...

    今天把sql server 2008 r2装了起来,64位的,然后就迫不及待地体验连接数据库的操作,编程语言是java.我一开始学了一种非常老的连接方式,使用JDBC-ODBC桥.初次使用不太熟练,所 ...

  6. 微软ODBC服务器驱动,解决安装SQL Server时[Microsoft][ODBC 驱动程序管理器] 未发现数据源的问题...

    在Windows Server 2003 上安装 MS SQL Server 2000 时,最后阶段安装程序在配置服务器时,出现"[Microsoft][ODBC 驱动程序管理器] 未发现数 ...

  7. java未发现数据源名称并且未指定默认驱动程序_转:java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序...

    在Win7 64位系统下,使用Java+Access数据库编程,用Java连数据库时,出现错误提示,如下: Java java.sql.SQLException: [Microsoft][ODBC 驱 ...

  8. [IM002] [Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序 Navicat Premium 连接sql server

    [IM002] [Microsoft][ODBC驱动程序管理器]未发现数据源名称并且未指定默认驱动程序 错误 Navicat 连接sqlserver没有驱动,需要先安装一下驱动 解决办法 首先需要找到 ...

  9. System.Data.Odbc.OdbcException: ERROR [IM001] [Microsoft][ODBC 驱动程序管理器] 驱动程序不支持此功能

    System.Data.Odbc.OdbcException: ERROR [IM001] [Microsoft][ODBC 驱动程序管理器] 驱动程序不支持此功能 出现这个原因是因为vfpodbc. ...

  10. [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 本人不喜欢在本机装sql server,因为又庞大,又占空间,而且在安装过程中有时会出错,处 ...

最新文章

  1. [Linux]VI相关操作
  2. eclipse安装JAVA反编译插件
  3. redis 集群 及 管理初步
  4. 移动端C#病毒“东山再起”,利用知名应用通信实现远控隐私窃取
  5. hdu1532(最大流裸题)
  6. 如何在Lua与C/C++之间实现table数据的交换
  7. MacOS使用brew无法安装Python_无法安装gdbm_无法安装autojump
  8. SQL服务器名称更改
  9. ubuntu彻底卸载Nvidia显卡驱动
  10. FHIR标准和国际基于FHIR的互联互通实践(1):如何定义互联互通?
  11. 道路交通安全隐患排查的方法研究
  12. CIS Control v8的变化
  13. 弘辽科技:新品直通车怎么选词?怎样测试人群标签?
  14. CSS DIV 折角的代码
  15. java倒计时器_Java并发系列5--倒计时器CountDownLatch
  16. 瑞数5维普期刊js逆向
  17. 音乐文件自动整理工具
  18. 【个人整理】一文看尽目标检测算法SSD的核心架构与设计思想
  19. NoSQL代表: Mongo DB(芒果数据库) NoSQL代表: Mongo DB(芒果数据库)
  20. 【调剂】重庆理工大学2022年硕士研究生招生调剂公告

热门文章

  1. 安装svn 汉化包 也不能设置中文
  2. linux进程通信 bzero函数,处理Linux网络编程中的IP地址 — 通信产业...
  3. 2018年最新北风网人工智能视频教程(完整版)
  4. PyGame:Python 游戏编程入门-1
  5. 懒人查看python源码方法
  6. 2021第十二届蓝桥杯省赛B组原题答案及总结
  7. 【C++模块实现】| 【07】对于互斥、自旋锁、条件变量、信号量简介及封装
  8. 数据库系统概论-数据库安全性
  9. MaxtoCode 1.10 普及版 开发已经接近尾声
  10. 小学多媒体计算机室管理计划,多媒体教室管理工作计划5篇