[Seasar-user:15677] Re: [DBFlute]ReplaceSchemaがシノニムをDROP TABLEしようとする。

西山 はじめ [E-MAIL ADDRESS DELETED]
2008年 9月 5日 (金) 20:21:34 JST


お世話になっております。
西山です。

 > 「Drop Table シノニム」で落ちてしまう件は、
 >
 >> 取り急ぎ、こちらの件だけ対応してました。
 >> 
http://dbflute.sandbox.seasar.org/download/dbflute/dbflute-0.8.0.zip
 >> (SNAPSHOTとなります)
 >> でSYNONYMはDropできます。
 >
 > でよろしくお願いします。

確認できました。ありがとうございます。

 > #
 > # どうしてもクリアしなければならない問題は
 > # カラム情報が取得できてないところですね。。。
 > #

Oracle 9iは9iでも、パッチが全くあたっていないバージョン 
(9.2.0.1)を使用せざるを得ない状態です。(今年度後半にはサー 
バー入れ替えがある予定なので、その時にOracleバージョンアップ 
も提案する予定です)

少し急ぎで実装する必要がある所なので、当面はS2JDBCでしのごう 
と思います。


[2008/09/05 20:10] kubo さんは書きました。:
> 久保です。
> 
> 西山さん、ありがとうございます。
> 情報提供ありがとうございます!
> 
> 「Drop Table シノニム」で落ちてしまう件は、
> 
>> 取り急ぎ、こちらの件だけ対応してました。
>> http://dbflute.sandbox.seasar.org/download/dbflute/dbflute-0.8.0.zip
>> (SNAPSHOTとなります)
>> でSYNONYMはDropできます。
> 
> でよろしくお願いします。
> 
> 
>>> 主キーや外部キーが取得できないと聞いておりましたが、
>>> http://d.hatena.ne.jp/jflute/20080822/1219377402
>>> 主キーや外部キー意外のカラム情報も全く取得できない
>>> 状態でしょうか?
>> カラム情報が全く取得できていません。
>> project-schema.xmlの、スキーマの中が空です。
> 
> そうですか。こちらでは再現ができていないのですが、
> Oracleのバージョン違いの問題かもしれませんね・・・
> 
> 
>> エレメント・タイプ "table" のコンテンツが不完全です、"
>> (column+,(foreign-key|index|unique|id-method-parameter)*)" と一致しなければなりません。
>>  project-schema-artap.xml artap/mydbflute/dbflute-0.7.8/schema
>> 行 4
>> XML 問題
>>
>> Pleiadesを使用していますので、日本語化されています。
> 
> ありがとうございます。
> 
> 
>> A.
>> ほとんどはテーブルですが、別DBのデータを更新する必要があり、 一部のテーブルだけ、DBリンク+シノニムでアクセスしようと思い ました。
>>
>> B.
>> 混ざります。可能ならば、シノニムと普通のテーブルのFKも張ろう と考えております。
>>
> 
> 了解しました。ありがとうございます。
> additionalPrimaryKeyMapとadditionalForeignKeyMapで
> 対応できるかと思います。
> 
> #
> # どうしてもクリアしなければならない問題は
> # カラム情報が取得できてないところですね。。。
> #
> 
> 2008/9/5 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
>> お世話になっております。
>> 西山です。
>>
>> インラインで失礼します。
>>
>>>> シノニムを、「DROP TABLE シノニム名」が実行され処理がそこで
>>>> ストップしてしまいます。
>>> 具体的に発生する例外を教えて頂けますでしょうか?
>> 長いので添付にいたします。
>>
>>>> 実行環境ではシノニムのカラム情報が取得できていないらしく、
>>>> project-schema.xml、
>>>> bsentity.Bs~クラスに、カラム情報が全くありませんでした。
>>> 主キーや外部キーが取得できないと聞いておりましたが、
>>> http://d.hatena.ne.jp/jflute/20080822/1219377402
>>> 主キーや外部キー意外のカラム情報も全く取得できない
>>> 状態でしょうか?
>> カラム情報が全く取得できていません。
>> project-schema.xmlの、スキーマの中が空です。
>>
>>>> あと、些細なことですがproject-schema.xmlに type="SYNONYM"が
>>>> あると、DTDと内容が合わなくなり、Eclipse上でエラーとなりました。
>>> なるほど、これは想定しませんでした。
>>> DTD(どう直せば良いか...)確認します。
>>>
>> エレメント・タイプ "table" のコンテンツが不完全です、"
>> (column+,(foreign-key|index|unique|id-method-parameter)*)" と一致しなければなりません。
>>  project-schema-artap.xml artap/mydbflute/dbflute-0.7.8/schema
>> 行 4
>> XML 問題
>>
>> Pleiadesを使用していますので、日本語化されています。
>>
>>> また、シノニムの利用ですが、
>>> 具体的にどのような用途で利用されているか
>>> 参考までに教えてもらってもよろしいでしょうか?
>>>
>>> A. DBアクセスは全てシノニム経由を想定している?
>>> B. テーブルアクセスとシノニムアクセスを混ざる?
>>> など
>> A.
>> ほとんどはテーブルですが、別DBのデータを更新する必要があり、 一部のテーブルだけ、DBリンク+シノニムでアクセスしようと思い ました。
>>
>> B.
>> 混ざります。可能ならば、シノニムと普通のテーブルのFKも張ろう と考えております。
>>
>>
>>> 2008/9/5 西山 はじめ <[E-MAIL ADDRESS DELETED]>:
>>>> お世話になっております。
>>>> 西山です。
>>>>
>>>> 申し訳ありません。追加です。
>>>> 実行環境ではシノニムのカラム情報が取得できていないらしく、
>>>> project-schema.xml、
>>>> bsentity.Bs~クラスに、カラム情報が全くありませんでした。
>>>>
>>>> 以上よろしくお願いいたします。
>>>>
>>>> あと、些細なことですがproject-schema.xmlに type="SYNONYM"が
>>>> あると、DTDと内容が合わなくなり、Eclipse上でエラーとなりました。
>>>>
>>>> [2008/09/05 15:45] 西山 はじめ さんは書きました。:
>>>>> お世話になっております。
>>>>> 西山と申します。
>>>>>
>>>>> databaseInfoMapに
>>>>>      ; propertiesMap= map:{includeSynonyms=true}
>>>>> build.propertiesに
>>>>> torque.database.type.list = list:{TABLE;VIEW;SYNONYM}
>>>>> を設定して、replace-shema.batを実行したところ、
>>>>> シノニムを、「DROP TABLE シノニム名」が実行され処理がそこで
>>>>> ストップしてしまいます。
>>>>>
>>>>> jdbc.bat、generate.batではエラーとなりません。
>>>>>
>>>>> 仕様バージョン・環境は以下のとおりです。
>>>>>  DBFlute 0.7.9
>>>>>  Oracle 9.2.0.1
>>>>>
>>>>> 以上よろしくお願いいたします。
>>>>>
>>>> --
>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>> 株式会社フジミック システム開発センター ソフト開発2部
>>>> 西山 創
>>>> [E-mail]:[E-MAIL ADDRESS DELETED]
>>>>
>>>> 〒140-0002 品川区東品川3-32-42 フジテレビ別館7F
>>>> [TEL]:03-5495-1060
>>>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>>>
>>>> _______________________________________________
>>>> Seasar-user mailing list
>>>> [E-MAIL ADDRESS DELETED]
>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>
>>>
>>>
>>
>> --
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>> 株式会社フジミック システム開発センター ソフト開発2部
>>  西山 創
>> [E-mail]:[E-MAIL ADDRESS DELETED]
>>
>> 〒140-0002 品川区東品川3-32-42 フジテレビ別館7F
>> [TEL]:03-5495-1060
>> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>>
>> 2008-09-05 18:57:17,131 [main] INFO  (DfTableHandler#logDatabaseTypes():141)
>> - $ DatabaseTypes are 'TABLE - VIEW - SYNONYM'
>> 2008-09-05 18:57:17,381 [main] INFO
>>  (DfSchemaInitializerJdbc#callbackDropTableByJdbc():236) - drop table ATM01
>> 2008-09-05 18:57:17,396 [main] ERROR (DfAbstractTask#execute():88) -
>> execute() threw the exception!
>> java.lang.RuntimeException: java.sql.SQLException: ORA-00942:
>> �\�������r���[���������������B
>>
>>        at
>> org.seasar.dbflute.helper.jdbc.schemainitializer.DfSchemaInitializerJdbc.callbackDropTableByJdbc(DfSchemaInitializerJdbc.java:257)
>>        at
>> org.seasar.dbflute.helper.jdbc.schemainitializer.DfSchemaInitializerJdbc.dropTable(DfSchemaInitializerJdbc.java:211)
>>        at
>> org.seasar.dbflute.helper.jdbc.schemainitializer.DfSchemaInitializerJdbc.initializeSchema(DfSchemaInitializerJdbc.java:83)
>>        at
>> org.seasar.dbflute.task.replaceschema.DfCreateSchemaTask.initializeSchema(DfCreateSchemaTask.java:74)
>>        at
>> org.seasar.dbflute.task.replaceschema.DfCreateSchemaTask.doExecute(DfCreateSchemaTask.java:51)
>>        at
>> org.seasar.dbflute.task.bs.DfAbstractTask.execute(DfAbstractTask.java:83)
>>        at
>> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
>>        at sun.reflect.GeneratedMethodAccessor5.invoke(Unknown Source)
>>        at
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>        at java.lang.reflect.Method.invoke(Method.java:597)
>>        at
>> org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105)
>>        at org.apache.tools.ant.Task.perform(Task.java:348)
>>        at org.apache.tools.ant.Target.execute(Target.java:357)
>>        at org.apache.tools.ant.Target.performTasks(Target.java:385)
>>        at
>> org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329)
>>        at org.apache.tools.ant.Project.executeTarget(Project.java:1298)
>>        at
>> org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
>>        at org.apache.tools.ant.Project.executeTargets(Project.java:1181)
>>        at org.apache.tools.ant.Main.runBuild(Main.java:698)
>>        at org.apache.tools.ant.Main.startAnt(Main.java:199)
>>        at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
>>        at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
>> Caused by: java.sql.SQLException: ORA-00942: �\�������r���[���������������B
>>
>>        at
>> oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:74)
>>        at
>> oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:110)
>>        at
>> oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:171)
>>        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455)
>>        at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413)
>>        at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1030)
>>        at oracle.jdbc.driver.T4CStatement.doOall8(T4CStatement.java:183)
>>        at
>> oracle.jdbc.driver.T4CStatement.executeForRows(T4CStatement.java:936)
>>        at
>> oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1222)
>>        at
>> oracle.jdbc.driver.OracleStatement.executeInternal(OracleStatement.java:1770)
>>        at
>> oracle.jdbc.driver.OracleStatement.execute(OracleStatement.java:1739)
>>        at
>> oracle.jdbc.driver.OracleStatementWrapper.execute(OracleStatementWrapper.java:298)
>>        at
>> org.seasar.dbflute.helper.jdbc.schemainitializer.DfSchemaInitializerJdbc.callbackDropTableByJdbc(DfSchemaInitializerJdbc.java:238)
>>        ... 21 more
>>
>> _______________________________________________
>> Seasar-user mailing list
>> [E-MAIL ADDRESS DELETED]
>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>
>>
> 
> 
> 


-- 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
株式会社フジミック システム開発センター ソフト開発2部
 西山 創
[E-mail]:[E-MAIL ADDRESS DELETED]
 
〒140-0002 品川区東品川3-32-42 フジテレビ別館7F
[TEL]:03-5495-1060
++++++++++++++++++++++++++++++++++++++++++++++++++++++++



Seasar-user メーリングリストの案内