連接access后,可以查詢,更新等。但是創建就不會了。
jdk1.7 access2016
用了N多網上的方法。這是最近的方法,感覺不是陳述句的問題,因為我試了好多次不同陳述句。
public int Creattable(Connection connection)throws Exception{
Statement stmt = connection.createStatement();
String sql = "create table test01 (emloyee_id Int primary key,num int)";
int result = stmt.executeUpdate(sql);
connection.close();
return result;
}
本人小白,多多指教!
java.lang.UnsupportedOperationException: Cannot write indexes of this type due to unsupported collating sort order SortOrder[2052(0)] for text index (Db=note.accdb;Table=MSysObjects;Index=0)
at com.healthmarketscience.jackcess.impl.IndexData$ReadOnlyColumnDescriptor.writeNonNullValue(IndexData.java:1839)
at com.healthmarketscience.jackcess.impl.IndexData$ColumnDescriptor.writeValue(IndexData.java:1523)
at com.healthmarketscience.jackcess.impl.IndexData.createEntryBytes(IndexData.java:1244)
at com.healthmarketscience.jackcess.impl.IndexData.prepareAddRow(IndexData.java:581)
at com.healthmarketscience.jackcess.impl.IndexData.prepareAddRow(IndexData.java:559)
at com.healthmarketscience.jackcess.impl.TableImpl.addRows(TableImpl.java:1599)
at com.healthmarketscience.jackcess.impl.TableImpl.addRow(TableImpl.java:1462)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.addToSystemCatalog(DatabaseImpl.java:1441)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.addNewTable(DatabaseImpl.java:1068)
at com.healthmarketscience.jackcess.impl.TableCreator.createTable(TableCreator.java:170)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.createTable(DatabaseImpl.java:1024)
at com.healthmarketscience.jackcess.TableBuilder.toTable(TableBuilder.java:212)
at net.ucanaccess.converters.Persist2Jet.createTable(Persist2Jet.java:425)
at net.ucanaccess.commands.CreateTableCommand.persist(CreateTableCommand.java:101)
at net.ucanaccess.jdbc.UcanaccessConnection.flushIO(UcanaccessConnection.java:315)
at net.ucanaccess.jdbc.UcanaccessConnection.commit(UcanaccessConnection.java:205)
at net.ucanaccess.jdbc.AbstractExecute.executeBase(AbstractExecute.java:161)
at net.ucanaccess.jdbc.ExecuteUpdate.execute(ExecuteUpdate.java:50)
at net.ucanaccess.jdbc.UcanaccessStatement.executeUpdate(UcanaccessStatement.java:220)
at Main.view.Main.Creattable(Main.java:91)
at Main.view.Main.main(Main.java:50)
Exception in thread "main" net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.3 Cannot write indexes of this type due to unsupported collating sort order SortOrder[2052(0)] for text index (Db=note.accdb;Table=MSysObjects;Index=0)
at net.ucanaccess.jdbc.UcanaccessStatement.executeUpdate(UcanaccessStatement.java:222)
at Main.view.Main.Creattable(Main.java:91)
at Main.view.Main.main(Main.java:50)
Caused by: net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.3 Cannot write indexes of this type due to unsupported collating sort order SortOrder[2052(0)] for text index (Db=note.accdb;Table=MSysObjects;Index=0)
at net.ucanaccess.jdbc.UcanaccessConnection.commit(UcanaccessConnection.java:212)
at net.ucanaccess.jdbc.AbstractExecute.executeBase(AbstractExecute.java:161)
at net.ucanaccess.jdbc.ExecuteUpdate.execute(ExecuteUpdate.java:50)
at net.ucanaccess.jdbc.UcanaccessStatement.executeUpdate(UcanaccessStatement.java:220)
... 2 more
Caused by: net.ucanaccess.jdbc.UcanaccessSQLException: UCAExc:::3.0.3 Cannot write indexes of this type due to unsupported collating sort order SortOrder[2052(0)] for text index (Db=note.accdb;Table=MSysObjects;Index=0)
at net.ucanaccess.jdbc.UcanaccessConnection.flushIO(UcanaccessConnection.java:346)
at net.ucanaccess.jdbc.UcanaccessConnection.commit(UcanaccessConnection.java:205)
... 5 more
Caused by: java.lang.UnsupportedOperationException: Cannot write indexes of this type due to unsupported collating sort order SortOrder[2052(0)] for text index (Db=note.accdb;Table=MSysObjects;Index=0)
at com.healthmarketscience.jackcess.impl.IndexData$ReadOnlyColumnDescriptor.writeNonNullValue(IndexData.java:1839)
at com.healthmarketscience.jackcess.impl.IndexData$ColumnDescriptor.writeValue(IndexData.java:1523)
at com.healthmarketscience.jackcess.impl.IndexData.createEntryBytes(IndexData.java:1244)
at com.healthmarketscience.jackcess.impl.IndexData.prepareAddRow(IndexData.java:581)
at com.healthmarketscience.jackcess.impl.IndexData.prepareAddRow(IndexData.java:559)
at com.healthmarketscience.jackcess.impl.TableImpl.addRows(TableImpl.java:1599)
at com.healthmarketscience.jackcess.impl.TableImpl.addRow(TableImpl.java:1462)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.addToSystemCatalog(DatabaseImpl.java:1441)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.addNewTable(DatabaseImpl.java:1068)
at com.healthmarketscience.jackcess.impl.TableCreator.createTable(TableCreator.java:170)
at com.healthmarketscience.jackcess.impl.DatabaseImpl.createTable(DatabaseImpl.java:1024)
at com.healthmarketscience.jackcess.TableBuilder.toTable(TableBuilder.java:212)
at net.ucanaccess.converters.Persist2Jet.createTable(Persist2Jet.java:425)
at net.ucanaccess.commands.CreateTableCommand.persist(CreateTableCommand.java:101)
at net.ucanaccess.jdbc.UcanaccessConnection.flushIO(UcanaccessConnection.java:315)
... 6 more
uj5u.com熱心網友回復:
在網上查到,好像是權限問題,不能訪問msysobject表。access2016,取消了用戶和組權限,不知道用什么方法能解決這個問題。
將資料庫格式另存為.mdb。就可以創建表了。
.accdb格式肯定也可以創建表,希望高手幫忙一下。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/29512.html
標籤:Java SE
上一篇:wps國際版設定中文
下一篇:javascript救救孩子吧
