*

[C#]AS400をDBに見立ててPCのPGMからODBC接続する

公開日: : AS400, C#, プログラミング , , ,

◆前提条件◆
PCにClient Accessがインストールされている。
PCに.NET Framework3.5以上がインストールされている。

◆ソース◆

using System;
using System.Collections.Generic;
using System.Text;
using System.Data.Odbc;

namespace Hoge{
	class HogeClass{
		private const string Provider = "{iSeries Access ODBC Driver}";
		private const string Source = "192.168.0.999"; //ホスト名指定
		private const string UserName = "HOGE";
		private const string UserPass = "HOGE";

		void HogeFunction(){
			string[] strSet = {
				"Driver=" + Provider +";",
				"System=" + Source +";",
			 	"Uid=" + UserName + ";",
				"Pwd=" + UserPass +";",
			};
			string conStr = string.Join("", strSet);

			using (OdbcConnection con = new OdbcConnection(conStr)){
				con.Open();
				string sql = "select * from HOGELIB.HOGEFILE"; // HOGELIBのHOGEFILEというテーブルにSQLを投げる
				using(OdbcCommand cmd = new OdbcCommand(sql, con))
				using(OdbcDataReader reader = cmd.ExecuteReader()){
					while(reader.Read()){
						string col1 = (string)reader["COL1"]; // HOGELIBのHOGEFILEというテーブルのCOL1のデータ(Char)を取得
					}
					reader.Close();
					cmd.Dispose(); // Disposeしなくてもusingでされるけど一応
				}
			}
		}
	}
}

◆解説◆
ODBCの基礎です。AS400をDB2に見立てて利用しているイメージです。
HOGELIBというライブラリのHOGEFILEというオブジェクトにアクセスし、そのCOL1というフィールドに存在するデータ(文字型)を取得しています。
ちなみに今回のこれは、メンバーは*FIRSTしか取れませんのでご注意ください。
いまどきPFのメンバーでデータを切り替えるような運用はしないとは思いますが。

どうしてもメンバー単位でデータを切り替えたい場合はこちら→[C#]AS400のメンバーを指定してデータにアクセスする

ad

関連記事

logo

[C#, AS400]列挙体の文字列化&DB2/400にODBC接続

定数をなるべく書きたくないんです。 あとからメンテをするときに複数箇所変更しなくてはいけないから。

記事を読む

unity debug

[Unity]MonoDevelopのデバッグの仕方

コメントで頂いた質問を打破するためにデバッグの仕方でも書いてみます。 まずは、プロジェクトを開

記事を読む

logo

[Unity]Unity2Dでパズドラのようにタイルを動かす ソース解説

◆全文 using UnityEngine; using System.Collection

記事を読む

wannabenote_unity

[Unity]コードリファレンス ゲーム時間を表示する。

ゲーム内の時間を表示します。 Timeクラス 時間のためのクラスです。 ゲームが起動してか

記事を読む

Wannabenote

[Unity]Unity2Dチュートリアル パズルを落下させる。

前回の続き。 とりあえず、パズルが消えたので、パズルを落としましょう。 以下のようにソースを

記事を読む

logo

[C#, Linq]foreach構文は書けるけど、Linqはよくわからなくて勉強する気がなくなった貴方に

Linq普及委員会エントリです。 いまさらすぎるわ! とか言わないで。 小難しい話はなしに、

記事を読む

VisualStudio_

[c++,cpp]C++でじゃんけんをしよう

過去に書いた超くだらないソースを見つけたので衝動的にうp。 C++でじゃんけんをしよう!

記事を読む

unity

[Unity]コードリファレンス GameObjectを親子関係にする。

親子関係にして、親が動いたら子も動くような動きをさせます。 transform.parentプ

記事を読む

Unity_

[Unity]Unity2Dチュートリアル 画面上のGameObjectを左下から取得する ソース解説

◆全文 public class GameSystem : MonoBehaviour {

記事を読む

wannabenote

[C#, Excel]最終行を取得する

Excelを触っているのでC#でExcelネタが続きます。 Excelの行数が知りたい Exce

記事を読む

ad

Message

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

ad

  •  Auther;わなび

     「オープン系得意だよね? 俺のPCの調子悪いんだけど」という無茶振りから解き放たれゲームエンジニアに。
    C#とかUnityを扱います。
    Twitterフォロー大歓迎です。
    githubアカウント→wannabenote
  • follow us in feedly
PAGE TOP ↑