Announcement

Collapse
No announcement yet.

Grails Hibernate MSSQL

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Grails Hibernate MSSQL

    Hallo,

    ich hab ein Problem mit Hibernate in Grails. Ob es Grails spezifig ist oder Hibernate allgemein betrifft kann ich im Moment nicht sagen.

    Es soll eine neue Tabelle erstellt werden, bzw. ausgelesen werden die "transaction" heißt. Ich habe den dialect von Hibernate schon auf org.hibernate.dialect.SQLServerDialect gestellt, jedoch verwendet Hibernate keine Quotes. In meinem Fall wäre das []. Das heißt der SQL müsste [transaction] benutzen.

    Muss man eine bestimmte Einstellung vornehmen in Grails bzw Hibernate, damit die Quotes angeschaltet werden?

    Die Namen der Tabellen sind schon festgelegt und können nicht geändert werden, da ich Grails auf eine existierende Datenbank aufbauen will.

    Mit freundlichen Grüßen

    Hellfiredragon

  • #2
    Einschalten kann man das nicht. Ev. ist das Problem behoben wenn Du beim Mapping der Tabelle gleich den Namen mit Quotes angibst, also @Table(name = "[transaction]") statt @Table(name = "transaction") .

    Comment


    • #3
      Ich dachte dafür seien die "dialects" da?

      Bsp:

      Code:
      public class SQLServerDialect extends SybaseDialect {
      	...
      	public char closeQuote() {
      		return ']';
      	}
      
      	public char openQuote() {
      		return '[';
      	}
      	...
      }

      Comment


      • #4
        Der Dialect kennt halt nicht alle reservierten Tabellennamen. Die Methoden sagen ja nur das MSSQL [] zum quoten benutzt, nicht was alles gequoted werden muß. Hier steht was dazu:

        http://docs.jboss.org/hibernate/stab...tedidentifiers

        Mach es am besten so wie dort beschrieben, also backticks zum quoten.

        Comment

        Working...
        X