カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

VisualC#でSQLServerへの接続

VisualC#でSQLServerに接続し、データを取得するサンプルです。
割と簡単に取得できますので、是非やってみてください。

まずはSqlClientの参照が必要です。

using System.Data.SqlClient;

接続の設定をします。

private string GetConnectionString()
{
    var builder = new SqlConnectionStringBuilder()
    {
        DataSource = "サーバーのIPアドレス",
        InitialCatalog = "データベース名",
        IntegratedSecurity = false, //User ID および Password を接続文字列中に指定するか
        UserID = "ユーザーID",
        Password = "パスワード"
    };

    return builder.ToString();
}

続きを読む…»

2,116 views

SQLServerで完全バックアップから別のデータベースに復元

SQL Server Management Studioでデータベースのバックアップから別のデータベースにデータを復元する方法

1.「データベース」を右クリックして、「新しいデータベース」を作成。

2.作成したデータベースを右クリックして[タスク]-[復元]をクリック。

3.復元用のソースを「デバイスから」とし、完全バックアップのファイルを指定。

4.[オプション]タブで「既存のデータベースを上書きする」にチェック。

5.[オプション]タブの「次のデータベースファイルに復元」で指定されているパスを新しく作成したデータベースのファイルに変更する。
そうしないと、元のデータベースとは復元先が違うのでエラーが発生します。

参考URL:
https://siguniang.wordpress.com/2010/04/25/sqlserver%E5%AE%8C%E5%85%A8%E3%83%90%E3%83%83%E3%82%AF%E3%82%A2%E3%83%83%E3%83%97%E3%82%92%E5%88%A5%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%81%AB%E5%BE%A9%E5%85%83%E3%81%99%E3%82%8B/

17,745 views

文字列の長さを求める Len/LenB

VBAで文字列の長さを求める際は少し注意が必要です。
通常のLen関数を使用した場合、半角・全角に関わらず全ての文字を一文字として計算します。
かといって、LenB関数を使用しても、全ての文字を2バイトとして計算するため、答えは倍になるだけです。

他のプログラム、例えばPHPならstrlen関数になりますが、こちらでは半角は1バイト、全角なら2バイトとなります。
こちらと同じようにVBAでも計算したい場合はどうすれば良いのでしょうか?
答えは以下のようになります。

'長さを求めたい文字列
HenkanStr = "LenB関数"
MsgBox LenB(StrConv(HenkanStr, vbFromUnicode))

出力結果は「8」となります。

StrConvについては以下をご覧ください。
https://k-sugi.sakura.ne.jp/it_synthesis/windows/vb/81/

4,728 views

データ競合のエラーを無視する

ACCESSで発生したデータ競合のエラーを無視するにはエラーイベントに
以下のような記述をします。

Private Sub Form_Error(DataErr As Integer, Response As Integer)

    If DataErr = 7787 Then
         Response = acDataErrContinue
    End If

End Sub

「7787」はデータ競合エラーのエラー番号

定数「acDataErrContinue」の値は「0」です。

これで競合エラーを無視した場合は、[他のユーザーによる変更を反映]を
選択したのと同じ扱いになります。

5,415 views

コンピュータの再起動とシャットダウン

コンピュータの再起動とシャットダウンする方法をご紹介します。

コンピュータの再起動

int flag = 0;
flag = ShutdownLibWrap.Reboot;
flag |= ShutdownLibWrap.ForceIfHung;
ShutdownLibWrap.DoExitWindows(flag);

シャットダウンのキャンセル

何か処理を実行しているときに、Windows Update等で勝手にシャットダウンされないようにしたいときに便利です。

フォームのLoadイベントに以下を記述します。

// アプリケーションが閉じられる時のイベントを追加
SystemEvents.SessionEnding += new SessionEndingEventHandler(SystemEvents_SessionEnding);

シャットダウンを検知したらキャンセルします。

private void SystemEvents_SessionEnding(object sender, SessionEndingEventArgs e)
{
    e.Cancel = true;
}
3,640 views