2017-02-10 4 views
0

Ich möchte eine Tabelle mit einer benannten Abfrage erstellen, aber in einer anderen Datenbank. Und erhalte den Namen der Datenbank mit einem Parameter.Hibernate benannte Abfrage mit Parameter

Ich versuche es wie dieses

<sql-query name="createStatement"> 
    <query-param name="dbName" type="string"/> 
    CREATE TABLE `:dbName`.`test` (
     `customer_id` int(11) NOT NULL AUTO_INCREMENT, 
     PRIMARY KEY (`customer_id`) 
    ); 
</sql-query> 

Aber ich bin immer die Unbekannte Parametername Ausnahme zu tun. Ich habe versucht, Leerzeichen hinzuzufügen oder entfernen Sie das Zeichen, aber immer noch nicht funktioniert.

Wie kann dieser Parameter richtig eingestellt werden?

Antwort

0

Abfrageparameter können nicht für Datenbankkennungen verwendet werden. Auch nicht für Tabellen-IDs, Spalten-IDs oder SQL-Schlüsselwörter oder -Ausdrücke.

Abfrageparameter können nur für ein einzelnes lexikalisches Element verwendet werden, und nur dort, wo Sie sonst einen konstanten Datenwert verwenden könnten, d. H. Ein String-Literal in Anführungszeichen, ein literales Literal in Anführungszeichen oder ein numerisches Literal.

Verwandte Themen