勉強のため調べた内容をざっとメモ。
★SqlConnectionクラス
SQLServerに接続するためのクラス。
Imports System.Data.SqlClientが必要
★OdbcConnectionクラス
ODBCを使ったDBに接続するためのクラス
Imports System.Data.Odbcが必要
★日時制御
DateTime構造体を使用。
サンプルはこちらにたくさんあります。
- 現在時刻
obj.Today() - 日の加減算
obj.AddDays(x)
※年月日も同じようにAddXXXで処理できます。 - 出力形式
obj.ToString("yyyy/MM/dd")
★トランザクション制御
富士通のアプリケーション開発ガイドにトランザクション制御があったので拝借。
- コネクションを接続します。詳細は、“C.5.1 接続および切断”を参照してください。
- OdbcCommand.ExecuteNonQueryメソッドでSET TRANSACTION文を実行しアクセスモードを設定します。
- OdbcConnection.BeginTransactionメソッドでトランザクションを開始します。
引数IsolationLevelに独立性水準(IsolationLevel.ReadCommitted)を設定します。
OdbcTransactionオブジェクトが作成されます。 - 作成されたOdbcTransactionオブジェクトを、データ操作を行うオブジェクト(OdbcCommand)のTransactionプロパティに設定し実行します。
- データ操作が正常終了した場合、OdbcTransaction.Commitメソッドを実行します。
データ操作が異常終了した場合、OdbcTransaction.Rollbackメソッドを実行します。 - コネクションを切断します。
- オブジェクトを破棄します。
値渡し(ByVal)と参照渡し(ByRef)の違い。
値渡し→プロシージャ側で新しい変数に値がコピーされる。呼び出し側の変数への影響はなし
参照渡し→プロシージャ側に変数自体を渡されるため、呼び出し側の変数そのものに影響する。
ByRefの使いどころは、
- 戻り値が複数ある
- イベントの引数にスイッチの役割をもたせたい
- 構造体データを引数に取りたい
- オブジェクトを渡す