2017-02-10 21 views
0

名前付きクエリを使用して別のデータベース上にテーブルを作成したいとします。また、パラメータを使用してデータベースの名前を取得します。パラメータ付きのHibernate名前付きクエリ

私はこの

<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> 

ようにそれをやろうとしている。しかし、私は未知パラメータ名例外を取得しています。スペースを追加したり、文字を削除しようとしましたが、まだ動作していません。

このパラメータを設定する正しい方法は何ですか?

答えて

0

データベース識別子にはクエリパラメータを使用できません。また、テーブル識別子、カラム識別子、SQLキーワード、または式のためのものでもありません。

クエリパラメータは、1つの字句要素に対してのみ使用できます。定数データ値、つまり引用符付き文字列リテラル、引用符付き日付/時刻リテラル、数値リテラルを使用できる場所でのみ使用できます。

関連する問題