MZPlatformユーザー会

作成した返信

10 件の投稿を閲覧中 - 661 ~ 670 件(全 756 件)
  • 著者
    投稿
  • MZPlatformユーザー会
    サイト管理者

    補足ですが、この掲示板に記入したSQL文をコピーペーストして使用すると、シングルクオーテーションが全角文字になってしまって実行時にエラーとなるので、半角に修正してお使いください。

    MZPlatformユーザー会
    サイト管理者

    これまでご質問いただいたようなことを検討したことがありませんでしたが、調べてみると簡単にできるようです。

    ここでは、H2というデータベースを使う方法をご紹介します。
    http://www.h2database.com/html/main.html

    上記の公式サイトからZIPファイルをダウンロードしていただき、展開したフォルダに含まれるJARファイルを、MZで利用しているJavaのフォルダ(3.5の標準インストールであれば、C:\MZPlatform\Java\jre8_mz3.5\lib\ext)にコピーしてください。準備はこれだけで完了です。

    あとは、データベースアクセスコンポーネントでの接続設定と、SQL文を適切に書くことでCSVファイルを対象とした検索が自由に実行できます。その方法をMZのサンプルアプリを用いて説明します。ここでは「データベースアクセス_3(機能拡張版).mzax」を使います。

    上記のアプリが起動したら、設定用のフレームでドライバのフィールドを「org.h2.Driver」、サーバのフィールドを「jdbc:h2:mem:」、ユーザ名とパスワードとデータベース名をすべて空にします。スキーマ使用や大小区別のチェックは外してください。

    この状態で接続ボタンを押すと、接続できるはずです。もう一つのフレームにツリーが表示されると成功です。接続に失敗した場合は、JARファイルのコピー先か入力するパラメータの設定に失敗している可能性がありますので、ご確認ください。

    最後に、SQL文として下記のようなクエリを作成して実行してみてください。
    select * from csvread(‘(ファイルパス)’,null,’Shift-JIS’)
    (ファイルパス)のところで検索したいCSVファイルのパス名を指定します。
    ‘Shift-JIS’はファイルのエンコードに応じて変えるようです。
    書き方が合っていれば、CSVファイルの中身がテーブルとして表示されると思います。
    これが実行できたら、後ろにwhere節を追加していろいろ試してみてください。

    こちらでも初めて使用したので、何か制限があるかもしれません。
    もし何か問題がありましたらご報告ください。

    返信先: ファイルの作成日時の取得について #4739
    MZPlatformユーザー会
    サイト管理者

    残念ながら、現在ファイルコンポーネントに作成日時取得のメソッドはありません。
    MZの開発を開始した当初は、Java側でその機能の提供がなかったためです。

    調べたところ、Javaの現在のバージョンでは作成日時取得の機能が提供されているようなので、MZの次期バージョンから追加します。

    もしすぐにでもこの機能が必要であれば、拡張パッチをここに添付できますので、ご希望であればお知らせください。

    MZPlatformユーザー会
    サイト管理者

    散布図を用います.
    x座標y座標の順にすべての系列の座標値を格納したテーブルデータを作成し,散布図に設定します.その際,メソッドsetLineVisibleを用いて線の描画の有無,メソッドsetMarkerVisibleを用いて点の描画の有無を指定できます.
    引数のbooleanは描画の有無,intは系列インデックスを示します.
    もし折れ線が各系列に関連するもので,数式が分かっている場合には,setTrendDataMathematicLineで関数が描画できます.ただし,各系列と同じ色になってしまいます.数式の記述については,MZ Platform JavadocのPFPlotChartをご参照ください.
    数式ではなく座標データの場合にはsetTrendDataを用いて,座標データを設定してください.
    ご参考のため,サンプルアプリケーションを添付します.

    添付ファイル:
    返信先: Oracleへの接続方法 #4732
    MZPlatformユーザー会
    サイト管理者

    つまり、現在の問題はOracleにJDBCで接続を確立することができないということですね。
    もし他のソフトウェアを用いて、JDBC経由で接続を確立することができれば、その設定を参考にすればMZでも接続できると思います。

    こちらから提供している情報は、サーバに直接接続する設定だけですが、実際にはOracleへのJDBC接続は3種類提供されています。下記リンク先をご覧ください。
    https://docs.oracle.com/cd/E11882_01/appdev.112/e13995/oracle/jdbc/OracleDriver.html

    もしサーバに直接接続する方法(thinドライバ)ではできない状況であれば、Oracleクライアント経由(oci)の設定も選択肢としては存在します。ただし、産総研では確認していないのと、こちらはOracleのバージョンごとにJDBCドライバ(jarファイル)が異なったり追加ライブラリが必要なようなので、公式情報をよくお読みください。

    返信先: Oracleへの接続方法 #4730
    MZPlatformユーザー会
    サイト管理者

    こちらでは黒猫というソフトを使用したことがありませんが、インターネット上で検索する限りはOracleにもODBC経由で接続するという情報しか得られませんでした。「Oracle Provider for OLE DB」を選択しているわけではないということでしょうか?
    公式ページが存在しないようなので、詳細が確認できておりません。

    もし本当にJDBC経由であれば、使用しているJDBCドライバやJDBC接続に使用しているパラメータを同じにすれば、接続できるかもしれません。

    返信先: Oracleへの接続方法 #4728
    MZPlatformユーザー会
    サイト管理者

    データベースアクセスコンポーネントのソースは公開しても良いですが、それは本質的な問題ではないと思います。

    確認ですが、JDBCで接続に成功している組み合わせはあるのでしょうか。
    もしあれば、その設定をお知らせください。
    MZだけ失敗という表現が気になるのですが、黒猫というのはODBCを利用しているのではないでしょうか。それならODBCで接続できているだけだと思います。

    こちらとしては、JDBCからODBCに接続するものと誤解があるのではないかという点が不安です。JDBC経由では、Oracleのサーバに直接接続しますので、サーバ側の設定が必要です。そのようにお試しいただいていると信じていますが、そうであれば、今はSIDがわからないことが問題ではないでしょうか。

    サーバ側にログインできれば、環境変数でORACLE_SIDが確認できるそうですし、対象とするサーバにSQL文を送れるのであれば、select instance_name from v$instance;で取得できるという情報があるようです。

    返信先: Oracleへの接続方法 #4726
    MZPlatformユーザー会
    サイト管理者

    tnsnames.oraというファイルにSERVICE_NAMEとSIDの指定が書いてあるらしいですが、もしその中にSIDが書いていないか指定してもうまくいかない場合は、サンプルのMZアプリにあるままの「orcl」で試してみていただけますでしょうか。

    返信先: Oracleへの接続方法 #4724
    MZPlatformユーザー会
    サイト管理者

    それは残念です。
    こちらで試す環境がないので推測ですが、ODBCデータソースの登録では、ローカルのOracleクライアントと接続されている感じがしますが、JDBCドライバの場合はOracleサーバと直接通信しますので、Oracleクライアントの接続設定をご確認いただく必要があるかもしれません。

    返信先: Oracleへの接続方法 #4722
    MZPlatformユーザー会
    サイト管理者

    情報ありがとうございます。
    確かに、サーバ名かポート番号などの書き方に問題がありそうです。

    接続を試すMZアプリですが、MZ本体と一緒にインストールされている「データベースアクセス_4(DB切替版).mzax」をお使いいただけますでしょうか。場所はインストールフォルダの下の「AP_DATA/Sample」にあります。

    こちらを起動していただくと、データベース接続設定のフレームに「登録名」のコンボボックスがありまして、こちらを「Oracle」にしてください。

    あとは、「サーバ」のフィールドの中で「localhost」のところにサーバ名(ここでは//FT8000SVR?)、「orcl」のところにサービス名(ここではKAIHATU)を入れます。ポート番号は「1521」ではないでしょうか?独自の環境で指定されているならそれを書いていただきます。いただいた画像を拝見すると少なくとも「/em」は余計な感じがしますが、サーバ名がこの書き方で通るかどうかはよくわかりません。WindowsのPC名であれば、「\\」もお試しいただき、それでもだめならIPアドレスも試していただけるとうまくいくかもしれません。

    最後に「ユーザ名」と「パスワード」を適切に入力していただき、「スキーマ名」も「ユーザ名」と同じものを入力してください。

    これで接続できると良いのですが。
    以上、お試しいただけますでしょうか。

10 件の投稿を閲覧中 - 661 ~ 670 件(全 756 件)