最近、マイクロソフトのSQL Serverを使っています。
SQL ServerのコマンドラインインターフェースであるT-SQLの簡単な使い方は次の通りです。
SQL Serverのコマンドラインインターフェース(CLI)であるT-SQLを使ってみる
SQL Serverのコマンドラインインターフェース(CLI)を使って、初めてT-SQLを使ってみたのですが、MySQL上がりの私にとっては、何もかもが、とにかく奇妙でした。
何が奇妙かと言うと、文末にセミコロン(;) は必要ない...
今回、C#でプログラムからSQL Serverにアクセスする簡単な方法をまとめました。
目次
System.Configuration の追加
C#からSQL Serverにアクセスするために
usingで使うコンポーネントとして「参照の追加」で、「.NET」の「System.Configuration」を追加しておきます。
SQL Serverへのコネクションストリングとして app.config の追加
app.configを追加して、SQL Serverへのコネクションストリングを追加しておきます。
app.configの中身は次の通りです。
1 2 3 4 5 6 7 8 |
<?xml version="1.0" encoding="utf-8" ?> <configuration> <connectionStrings> <add name="ConnectionString" connectionString="Data Source=(local)\SQLEXPRESS;Initial Catalog=DB_test;Persist Security Info=True; User ID=DB_user;Password=abcdefg" /> </connectionStrings> </configuration> |
C#でSQL Serverにアクセスする簡単なプログラム
C#でSQL Serverに接続してSQLを実行する簡単なプログラムは次の通りです。
app.config に作っておいた "ConnectionString" を使って接続します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
using System.Configuration; using System.Data.SqlClient; static void Main(string[] args) { // 接続文字列の取得 var connectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; // データベース接続の準備 var connection = new SqlConnection(connectionString); // データベースの接続開始 connection.Open(); // 実行するSQLの準備 var command = new SqlCommand(); command.Connection = connection; command.CommandText = @"SELECT count(*) FROM M_TEST"; // SQLの実行 command.ExecuteNonQuery(); SqlDataReader reader = null; command.CommandText = @"SELECT ID from M_TEST"; // SQLの実行 reader = command.ExecuteReader(); if (reader.HasRows) { while (reader.Read()) { Console.WriteLine("{0}", reader.GetInt32(0)); } } // データベースの接続終了 connection.Close(); } |
C#とSQL Serverを理解していたら簡単に実装できるでしょう。
実際のコードでは、try catch を使ってエラーハンドリングするようにしておきましょう。
↓C#を使ったSQL Serverへのアクセスに関する書籍は以下の通りです。
プログラミングの無料レッスン体験
約8,000名の受講生と80社以上の導入実績のあるプログラミングやWebデザインのオンラインマンツーマンレッスンCodecamp
<Codecampの特徴>
1 現役エンジニアによる指導
2オンラインでのマンツーマン形式の講義
3大手企業にも導入されている実践的なカリキュラム
↓無料体験レッスン実施中です。
コメント