Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序不会写入MS DB_Java_Ms Access_Jdbc - Fatal编程技术网

Java 应用程序不会写入MS DB

Java 应用程序不会写入MS DB,java,ms-access,jdbc,Java,Ms Access,Jdbc,我已经创建了一个Java桌面应用程序,它可以读取和写入MicrosoftAccess数据库 在我将应用程序转换为.JAR之前,它运行良好,之后它只能从数据库中读取数据,而不能写入 关于如何解决这个问题有什么想法吗?我猜您已经将数据库文件包含在JAR文件中了。简单地说,虽然您可以获得一个URL来从JAR中读取文件,但您无法写入文件。您需要获取数据库MDB文件吗?如果要写入,请将其从JAR中取出并放入实际的文件系统。是否获得stacktrace或任何其他信息?MDB成为只读的最可能原因是它所在的目录

我已经创建了一个Java桌面应用程序,它可以读取和写入MicrosoftAccess数据库

在我将应用程序转换为.JAR之前,它运行良好,之后它只能从数据库中读取数据,而不能写入


关于如何解决这个问题有什么想法吗?

我猜您已经将数据库文件包含在JAR文件中了。简单地说,虽然您可以获得一个URL来从JAR中读取文件,但您无法写入文件。您需要获取数据库MDB文件吗?如果要写入,请将其从JAR中取出并放入实际的文件系统。

是否获得stacktrace或任何其他信息?MDB成为只读的最可能原因是它所在的目录没有正确的权限。Jet/ACE要求数据文件位于Windows文件系统中。时期声明结束。感谢您的回复,在MDB位于内部之前确实如此,但现在MDB文件位于Jar文件之外。我可能已经解决了这个问题,我四处窥探,发现在windows中有一个叫做INTERACTIVE的用户组,如果我给这个组完全控制权,JAR可以向它写入,否则nada。现在是在其他系统上测试的时候了。您可以在user.home的子目录中设置DB。使用系统属性x-plat很容易找到。并在运行中保持稳定。它还应该为用户启用写操作。顺便说一句,这个应用程序。是否有GUI,例如Swing、AWT、SWT?如果是这样,这可能是一个很好的安装选项。JWS提供将在第一次启动应用程序之前调用的ExtensionInstallerService。这是我的小弟弟。