1
5
字面上的答案是否定的——代码从来没有“固有的错误”,而是它是否满足需求的问题——这可能包括可维护性、安全性、健壮性或快速性。 您正在运行的代码实际上是一个纯粹在Access中的JET查询——Java代码除了告诉Access运行查询之外什么也不做。 一方面,如果它没有坏,不要修理它。另一方面,很有可能在不久的将来它会破裂,所以你可以试着预先修理它。 可能破裂的两个原因是:
说到这里,我们都是实用主义者。如果上面的代码来自一个实用程序类,您每周/每月/每年/每次都要手工使用几次,那么这并不是一个真正的问题。 如果它是构成web应用程序一部分的类,那么“正式的”Java方法是从CSV文件中读取记录(使用CSV解析器或CSV/TEXTJDBC驱动程序),从记录集中获取列,对它们进行验证或健全性检查,然后使用新的PreparedStatement将它们插入Access数据库。更多的麻烦,但更强大。 您可能会发现一些工具(例如对象关系层或其他数据访问工具)的组合,它们可以为您做很多事情,但是设置这些工具和编写代码一样麻烦。再说一遍,你会从这两个中学到很多东西。 |
2
2
一个警告字——JDBC-GT;访问查询(使用ODBC桥接)在64位系统上不工作,因为没有64位访问数据库驱动程序(驱动程序被包含在Windows的32位拷贝中,只能由32位进程访问)。您可以运行“odbcad32”或查看ODBC控制面板以查看驱动程序是否存在) 虽然在您的代码片段中看不到带有连接字符串的代码,但我不知道有任何针对Java的非商业访问JDBC驱动程序,只有JDBC->odbc桥接和依赖于Windows的访问(*mdb)驱动程序。微软不再支持这个驱动程序,也不打算把它移植到64位,所以从基础设施的角度来看,它是值得考虑的。 |
3
1
@david.w.fenton.myopenid.com:“你能提供一个引用,说明微软计划永远不为Jet引入64位ODBC驱动程序吗?” 大卫,我在微软的连接反馈上找到了一个帖子。 http://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=125117 “目前还没有计划由Office团队发布64位版本的JET driver。我们可能会考虑其他选择,并在我们有具体计划时向您提供最新信息。” 谢谢, SSIS团队。 微软发布于2007年3月10日晚上9:47 该反馈线程中没有来自Microsoft的更新。 |
4
0
问约书亚麦金农: 你能提供一个关于微软计划永远不为Jet引入64位ODBC驱动程序的引证吗?这听起来很合理,所以我一点也不怀疑你,我只想知道你是否有一个来源,你可以指出。 当然是女士 是 通过OLEDB提供64位系统上的Jet访问,对吧?这对JDBC没有帮助,但确实提供了一种使用Jet数据的方法(它们必须提供一些东西,因为Jet 4是操作系统的一部分,因为它被用作Active Directory的数据存储,并且从Windows 2000开始就被使用)。 |
Ujjawal Pandey · 如何为矢量化数据帧创建行CSV? 2 年前 |
n328 · 如何将指数格式的值从csv读取到numpy数组中? 2 年前 |
Bilal Sedef · 如何快速组合特定列上的多个csv文件? 2 年前 |
christhebliss · 如何在一个csv列中写入分号分隔的值? 2 年前 |
Max J. · 用整数作为键将dict写入csv 2 年前 |
Sarai · Python中的CSV文件处理和计算值 2 年前 |
BabaZuri · 应用筛选器时将csv中的行添加到数组 2 年前 |
user18796731 · 在Python中以CSV格式保存数组元素 2 年前 |