休止状態を使用して一時テーブルを作成できません ここに私のコードがあります
getSession().beginTransaction();
String queryString1 = "CREATE TEMPORARY TABLE sage_temp_table(CRMID VARCHAR(60),POPAmountPaid DECIMAL(14,2)) ";
getSession().createSQLQuery(queryString1).executeUpdate();
getSession().flush();
String queryString2 = "INSERT INTO sage_temp_table(CRMID,POPAmountPaid) SELECT CRMID,POPAmountPaid FROM sage_payments WHERE sage_payments.`CRMID` REGEXP \"^[0-9]+$\" AND"
+ " sage_payments.POPPaidDate NOT LIKE \"%0000-00-00 00%\" AND sage_payments.POPPaidDate IS NOT NULL AND sage_payments.POPAmountPaid IS NOT NULL";
getSession().createSQLQuery(queryString2).executeUpdate();
getSession().beginTransaction().commit();
ここのログでは、コマンドが実行されていることを示していますが、テーブルからコンテンツを選択すると、テーブル sage_temp_table が存在しないため、作成されず、エラーは発生しません。ログは次のとおりです。
04:00:04,549 INFO [STDOUT] Hibernate: CREATE TEMPORARY TABLE sage_temp_table(CRMID VARCHAR(60),POPAmountPaid DECIMAL(14,2))
04:00:17,463 INFO [STDOUT] Hibernate: INSERT INTO sage_temp_table(CRMID,POPAmountPaid) SELECT CRMID,POPAmountPaid FROM sage_payments WHERE sage_payments.`CRMID` REGEXP "^[0-9]+$" AND sage_payments.POPPaidDate NOT LIKE "%0000-00-00 00%" AND sage_payments.POPPaidDate IS NOT NULL AND sage_payments.POPAmountPaid IS NOT NULL
ここで、queryString1 テーブルから TEMPORARY を削除すると、もう 1 つのケースが作成され、挿入も行われます。何が間違っているのか教えてください。