Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Hibernate SQLServer dialect with MSAccess. Error -3516

4 views
Skip to first unread message

obh...@my-deja.com

unread,
Nov 11, 2006, 12:07:57 AM11/11/06
to
hi,
The output of the log file generated by Hibernate is posted below.

Hibernate: 3.1
Database: MS Access
Driver: Sun JDBC-ODBC driver
Dialect: SQLServerDialect

Based upon the Log output [posted below] I get the impression that the
SQL generated is missing a ';' (semi-colon). Is this correct, or am I
doing something wrong? If neccessary, how do I go about writing my own
dialect?

regards,
abhishek

init:
deps-jar:compile:17:06:49,808
INFO Environment:479 - Hibernate 3.1.317:06:49,871
INFO Environment:509 - hibernate.properties not found17:06:49,886
INFO Environment:525 - using CGLIB reflection optimizer17:06:49,902
INFO Environment:555 - using JDK 1.4 java.sql.Timestamp
handling17:06:50,246
INFO Configuration:1308 - configuring from resource:
hibernate.cfg.xml17:06:50,246
INFO Configuration:1285 - Configuration resource:
hibernate.cfg.xml17:06:51,449
INFO Configuration:469 - Reading mappings from resource:
contact/Contact.hbm.xml17:06:51,965 INFO HbmBinder:309 - Mapping
class: contact.ContactData -> ENTITY17:06:52,121
INFO Configuration:1419 - Configured SessionFactory: null17:06:52,355
INFO DriverManagerConnectionProvider:41 - Using Hibernate built-in
connection pool (not for production use!)17:06:52,355
INFO DriverManagerConnectionProvider:42 - Hibernate connection pool
size: 117:06:52,355
INFO DriverManagerConnectionProvider:45 - autocommit mode:
false17:06:52,355
INFO DriverManagerConnectionProvider:80 - using driver:
sun.jdbc.odbc.JdbcOdbcDriver at URL: jdbc:odbc:Demo17:06:52,355
INFO DriverManagerConnectionProvider:86 - connection properties:
{user=dba, password=****}17:06:52,902
INFO SettingsFactory:77 - RDBMS: ACCESS, version:
04.00.000017:06:52,902
INFO SettingsFactory:78 - JDBC driver: JDBC-ODBC Bridge (odbcjt32.dll),
version: 2.0001 (04.00.6019)17:06:52,980
INFO Dialect:103 - Using dialect:
org.hibernate.dialect.SQLServerDialect17:06:53,027
INFO TransactionFactoryFactory:31 - Using default transaction strategy
(direct JDBC transactions)17:06:53,043
INFO TransactionManagerLookupFactory:33 - No TransactionManagerLookup
configured (in JTA environment, use of read-write or transactional
second-level cache is not recommended)17:06:53,043
INFO SettingsFactory:125 - Automatic flush during beforeCompletion():
disabled17:06:53,043
INFO SettingsFactory:129 - Automatic session close at end of
transaction: disabled17:06:53,043 INFO SettingsFactory:144 -
Scrollable result sets: enabled17:06:53,043 INFO SettingsFactory:152 -
JDBC3 getGeneratedKeys(): disabled17:06:53,043
INFO SettingsFactory:160 - Connection release mode: auto17:06:53,058
INFO SettingsFactory:187 - Default batch fetch size: 117:06:53,058
INFO SettingsFactory:191 - Generate SQL with comments:
disabled17:06:53,058
INFO SettingsFactory:195 - Order SQL updates by primary key:
disabled17:06:53,058
INFO SettingsFactory:338 - Query translator:
org.hibernate.hql.ast.ASTQueryTranslatorFactory17:06:53,105
INFO ASTQueryTranslatorFactory:24 - Using
ASTQueryTranslatorFactory17:06:53,105
INFO SettingsFactory:203 - Query language substitutions: {}17:06:53,105

INFO SettingsFactory:209 - Second-level cache: enabled17:06:53,105
INFO SettingsFactory:213 - Query cache: disabled17:06:53,121
INFO SettingsFactory:325 - Cache provider:
org.hibernate.cache.NoCacheProvider17:06:53,121 INFO
SettingsFactory:228 - Optimize cache for minimal puts:
disabled17:06:53,121
INFO SettingsFactory:237 - Structured second-level cache entries:
disabled17:06:53,152
INFO SettingsFactory:257 - Echoing all SQL to stdout17:06:53,152
INFO SettingsFactory:264 - Statistics: disabled17:06:53,152
INFO SettingsFactory:268 - Deleted entity synthetic identifier
rollback: disabled17:06:53,152
INFO SettingsFactory:283 - Default entity-mode: pojo17:06:55,808
INFO SessionFactoryImpl:154 - building session factory17:06:56,886
INFO SessionFactoryObjectFactory:82 - Not binding factory to JNDI, no
JNDI name configuredHibernate: insert into ENTITY (LNAME, FNAME, TYPE)
values (?, ?, ?) select scope_identity()17:07:10,261
WARN JDBCExceptionReporter:71 - SQL Error: -3516, SQLState:
3700017:07:10,277
ERROR JDBCExceptionReporter:72 - [Microsoft][ODBC Microsoft Access
Driver] Missing semicolon (;) at end of SQL
statement.org.hibernate.exception.SQLGrammarException: could not
insert: [contact.ContactData]
at
org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)

at
org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)

at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:1986)
at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2405)
at
org.hibernate.action.EntityIdentityInsertAction.execute(EntityIdentityInsertAction.java:37)

at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:248)

at
org.hibernate.event.def.AbstractSaveEventListener.performSaveOrReplicate(AbstractSaveEventListener.java:269)

at
org.hibernate.event.def.AbstractSaveEventListener.performSave(AbstractSaveEventListener.java:167)

at
org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:101)

at
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:186)

at
org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:33)

at
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:175)

at
org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:27)

at
org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:70)

at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:530)

at org.hibernate.impl.SessionImpl.save(SessionImpl.java:518)
at org.hibernate.impl.SessionImpl.save(SessionImpl.java:514)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at
org.hibernate.context.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:301)

at $Proxy0.save(Unknown Source)
at dbaxs.dbms.saveRecord(dbms.java:68)
at shop.ShopEngine.saveRecord(ShopEngine.java:105)
at base.AbstractModule.fireQuery(AbstractModule.java:157)
at contact.ContactModule.addRecord(ContactModule.java:75)
at base.AddAction.executeAction(AddAction.java:22)
at contact.ContactAdd.actionPerformed(ContactAdd.java:28)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1786)

at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButton.java:1839)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)

at
javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)

at javax.swing.AbstractButton.doClick(AbstractButton.java:289)
at
javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:1113)

at
javax.swing.plaf.basic.BasicPopupMenuUI$ReturnAction.actionPerformed(BasicPopupMenuUI.java:578)

at javax.swing.SwingUtilities.notifyAction(SwingUtilities.java:1530)

at javax.swing.JComponent.processKeyBinding(JComponent.java:2438)

at javax.swing.KeyboardManager.fireBinding(KeyboardManager.java:253)

at
javax.swing.KeyboardManager.fireKeyboardAction(KeyboardManager.java:202)

at
javax.swing.JComponent.processKeyBindingsForAllComponents(JComponent.java:2515)

at javax.swing.JComponent.processKeyBindings(JComponent.java:2507)

at javax.swing.JComponent.processKeyEvent(JComponent.java:2401)
at java.awt.Component.processEvent(Component.java:4909)
at java.awt.Container.processEvent(Container.java:1569)
at java.awt.Component.dispatchEventImpl(Component.java:3615)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Component.dispatchEvent(Component.java:3477)
at
java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1713)

at
java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:627)

at
java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:831)

at
java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:741)

at
java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:592)

at java.awt.Component.dispatchEventImpl(Component.java:3506)
at java.awt.Container.dispatchEventImpl(Container.java:1627)
at java.awt.Window.dispatchEventImpl(Window.java:1606)
at java.awt.Component.dispatchEvent(Component.java:3477)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:456)
at
java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:201)
at
java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151)

at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:145)

at
java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:137)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:100)Caused
by: java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]
Missing semicolon (;) at end of SQL statement.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6958)

at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7115)
at sun.jdbc.odbc.JdbcOdbc.SQLExecute(JdbcOdbc.java:3150)
at
sun.jdbc.odbc.JdbcOdbcPreparedStatement.execute(JdbcOdbcPreparedStatement.java:214)
at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:1953)
... 60 more

0 new messages