Используя базу данных MS Access для хранения моей информации, она работала нормально, и до этого момента я создал новый метод с именем CreateLicense () , который принимает созданный мной класс лицензии и записывает его вбаза данных.
Когда код будет запущен, он выдаст ошибку, сообщающую, что 'пользователю не хватает привилегии или объект не найден: EXPIRED'
Уже попытался изменить имена полейИстек срок действия, если это было зарезервированное слово или что-то.Также пытался удалить поле Expired, но затем помечает ту же ошибку, но с CONTACT .
INSERT INTO Licenses (Name, DateRedeemed, Expired, LicenseLength, Contact) VALUES ('name','25/Jun/2019','02/Jul/2019','2','contact')
user lacks privilege or object not found: EXPIRED
Вот вывод моего оператора SQL Это код
public boolean CreateLicense(License newLicense) {
try {
Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
File currentDir = new File(""); // Creates a new file
String newFilePath = "jdbc:ucanaccess://" + currentDir.getAbsolutePath().toString() + "\\store\\data\\database1.accdb";
Connection conn = DriverManager.getConnection(newFilePath);
Statement stmt = conn.createStatement();
stmt.executeUpdate("INSERT INTO Licenses (Name, DateRedeemed, Expired, LicenseLength, Contact) VALUES "
//Values for the SQL Statement
+ "('" + newLicense.getName()//Start Line
+ "','" + newLicense.getRedeemed()//Middle Lines
+ "','" + newLicense.getExpired()//Middle Lines
+ "','" + newLicense.getLicenseLength()//Middle Lines
+ "','" + newLicense.getContact()+ "')");//End Line
conn.close();
return true;
} catch (Exception ex) {
String message = ex.getMessage();
System.out.println(message);
return false;
}
}
Некоторая дополнительная информация, помогающая решить. Имя таблицы: Лицензии Имена полей и их тип
- ID -
Autonumber
- Имя -
String
- Дата погашена -
String
- Истек срок действия -
String
- LicenseLength-
int
- Контакт-
String
ОБНОВЛЕНИЕ Я создал запрос, используя дизайн запроса в доступе, он предоставил информацию в базу данных штрафа, поэтому это не может быть SQL, который является проблемой.
ОБНОВЛЕНИЕ Когда я переименовываю таблицу в базе данных и запускаю приложение, я получаю ту же ошибку, но с именем таблицы вместо этого, я собираюсь создать новую базу данных и посмотреть, решает ли это что-нибудь
Решение найдено