gpt4 book ai didi

java - 警告 : Looking for usage map at page 1774, 但页面类型在 UCanAccess 中为 1

转载 作者:行者123 更新时间:2023-11-29 05:11:07 25 4
gpt4 key购买 nike

当尝试运行与 Access 2010 交互的程序时,它会抛出错误

WARNING:Looking for usage map at page 1774, but page type is 1

然后继续抛出关于user lacks privilege to access the table I'm trying to use的错误。

此程序在使用 Access 2013 时似乎运行良好,并且在我第一次尝试更新语句时它在 Access 2010 上运行过一次。现在它根本不起作用。

我似乎无法在网上的任何地方找到任何关于此错误的引用,所以我希望其他人以前遇到过它。

它会在这行代码中抛出错误,而在与 Access 2013 交互时它不会这样做:

ResultSet rSet = stmt.executeQuery("Select * FROM Players");

整个方法是:

 public int addPlayer(String name, int x) throws SQLException //drafts a person to team x (ownerID)
, ClassNotFoundException
{
//Database db = new DatabaseBuilder().setCodecProvider(new CryptCodecProvider()).open(new File("BBFBLMasterVersion3.accdb"));
Connection con;
try
{
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
con = DriverManager.getConnection("jdbc:ucanaccess://C:/Users/Andrew/Dropbox/Public/Schoolwork/IRC/BBFBLMasterVersion3.accdb"); //name of ODBC driver
Statement stmt = con.createStatement();
//stmt.executeQuery("SELECT * FROM DraftNightQuery");
//ResultSet rSet = stmt.getResultSet();
ResultSet rSet = stmt.executeQuery("Select * FROM Players");
String[] split = name.split(" ");
String salary = "1";
while(rSet.next())
{
String lastName = rSet.getString("Last");
//int x = Integer.parseInt(salary);
if(split[0].toLowerCase().equalsIgnoreCase(lastName))
{
String firstName = rSet.getString("First"); //get the item from column named Team Name
if(split[1].toLowerCase().equalsIgnoreCase(firstName))
{
Statement connec = con.createStatement();
Statement idMatch = con.createStatement();
String id = rSet.getString("ID");
connec.executeUpdate("UPDATE Players SET OwnerID = "+x+" WHERE Last ='"+split[0]+"' AND First='"+split[1]+"' ");
//stmt.executeUpdate(whoToAdd);
ResultSet temp =idMatch.executeQuery("SELECT * FROM Salaries WHERE ID ='"+id+"'");
while(temp.next()){
String tempID = rSet.getString("ID");
if(id.toLowerCase().equalsIgnoreCase(tempID)){
salary = temp.getString("Salary");
}
}
con.close();
connec.close();
stmt.close();
idMatch.close();
return Integer.parseInt(salary);
}
}
}
return 1;
}
finally{}
}

最佳答案

正如 Gord 所说,问题由 jackcess 检测并记录,它可能是由 accdb 文件损坏引起的(我会尝试使用 Compact 和修复 Access 工具修复它)。此外,它也可能是由于它在同步保管箱文件夹中的使用而引起的。因此,文件是通过 UCanAccess 或其他方式修改的是无关紧要的,因为所有这些都发生在较低层。请找到 jackcess 论坛中报告的类似问题(是的,它们是可搜索的,您是否删除了页码?)

关于java - 警告 : Looking for usage map at page 1774, 但页面类型在 UCanAccess 中为 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28463234/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com