|
|
業務報告
業務報告部屋を作ってみました。
DbMove_02b に更新しました。 追加した内容は # 183 の ZSQLMethod プロパティ Advances -> Maximum rows to retrieve 設定するようにした。 それと、作成された PythonScript を一気に実行できるように、runindex_html(dtmlmethod)を追加した。 # 今回は以前の反省を込めてもう少しテストしてアップします。 # WIN版も作ってみた(postgreSQLはないけど)
DbMove_02a を作りました。 以前までは、テーブル単位でオブジェクト(CreateFolder内に)を作成していましたが、 今回のバージョンからデータベース単位でオブジェクトを作成できるようになりました。 実行用 PythonScript が、runxxxpy xxxの部分はテーブルの名前をテーブルの数だけ作成しますので、それぞれ実行して下さい。 # 余談ですが、各データベースフォルダー(MYSQL,IBSQL,PGSQL)内の SQL(getindex,gettable,getdbnames) 文はかなり参考になると思います。(このSQLの情報は MYSQL を除き検索してもなかなか見つからないと思います) PS > http://fzug.com/ws/fzug_prog/zopeing/wiki/test4/c-8 に読みにくいですが、説明を書きました。
>>186 申し訳ありません。また時間下さい。 ふうー、 今の所動いてます。 大きなデータを、、、説明書こうと思ったですが、使ってみないと 解らないので、なにかあったら意見下さい。
>>184 DbMove_02.zexp を作ってみました。 間違いがあります。 可能な限り修復しました。が、 Firebird の動きが可笑しいです。 申し訳ありません。また時間下さい。
DbMove_02.zexp を作ってみました。 今回のバージョンから、コピーに必要なオブジェクトを作成します。 テーブルを作成できない場合手作業ですが、修正が可能になりました。 作成されるオブジェクトは、 1.Database Connection 2個(コピー先、コピー元) 2.ZSQLMethod 3個 PS >間違いました、4個でした。 3.実行用 PythonScript (runpy)正確には作るではなく既存の Script を編集する。 結構面白いですよ。 http://fzug.com/ws/fzug_prog/zopeing/DbMove_02 で確認できます。download -> DbMove -> DbMove_02.zexp にも入ってます。 # manage_addZSQLMethod で悩んでましたが、田原さんに教えてもらった。 # context.manage_addZSQLmethod ではなく、context.manage_addProduct['ZSQLMethods'].manage_addZSQLMethodと書かなければいけなかった。 # 田原さんに感謝(土日は解らないで、これだけで終わった)
>>182 DbMove_01a.zexp やっとコピーできるようになったみたいです。 原因: ZSQLMethod のプロパティに Advances -> Maximum rows to retrieve があります。 この値をゼロに変更すると、一度に読み込むレコード数を Zope は干渉しないと、Zope Bibleに書いてあったので、ゼロにしていたのが原因でした。 これは各データベースに少しくせがあるようです。 Firebird, PostgreSQL はゼロにしたら一行も読み込みません。 だからここに直接、最大読み込みレコード数を書くと機能します。 MySQL は、ここをゼロにして SQL文の limit を書くと反応するみたいです。 例: select * from table limit 1000000 # まだ全部の組み合わせをテストしていません。 # 又一度目のコピーに失敗しても、もう一度コピーするとコピーできる組み合わせがあった。 # 今回から「TB作成」ボタンを付けました。一度に複数コピーしたかったのですが、一個ずつコピーしないとダメみたいです。 # テーブルの作成に失敗すると基本的にアウトです。フィールド名を受け付けないDBがあります。 date と言うフィールド名は MySQL,PostgreSQL はOKだが、Firebird はダメとかでテーブルを作成できないみたいです。
>>181 ボケかました。 DbMove_01a.zexpは、ぜんぜんコピーできません。 ちょっと時間下さい。
|
|