C#でSQLサーバーにデータを挿入する操作は、データベースを扱うアプリケーション開発において基本的かつ重要なスキルです。この記事では、C#を使用してSQL Serverデータベースにデータを挿入する方法を、初心者にも分かりやすく解説します。コード例を交えながら、step by stepで INSERT 操作の実装方法を見ていきましょう。
目次
SQL Serverへの接続とINSERT操作の基本
C#からSQL Serverにデータを挿入するには、主に以下の手順が必要です:
- データベース接続の確立
- INSERT文の作成
- SQLコマンドの実行
- 結果の確認
以下に、これらの手順を実装した基本的なコード例を示します:
using System;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// 接続文字列(実際の環境に合わせて変更してください)
string connectionString = "Data Source=YourServerName;Initial Catalog=YourDatabaseName;User ID=YourUsername;Password=YourPassword;";
// 挿入するデータ
string firstName = "太郎";
string lastName = "山田";
int age = 30;
try
{
// SQLサーバーへの接続
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("データベースに接続しました。");
// INSERT文の作成
string insertQuery = "INSERT INTO Employees (FirstName, LastName, Age) VALUES (@FirstName, @LastName, @Age)";
// SQLコマンドの作成と実行
using (SqlCommand command = new SqlCommand(insertQuery, connection))
{
// パラメータの設定
command.Parameters.AddWithValue("@FirstName", firstName);
command.Parameters.AddWithValue("@LastName", lastName);
command.Parameters.AddWithValue("@Age", age);
// クエリの実行
int rowsAffected = command.ExecuteNonQuery();
Console.WriteLine($"{rowsAffected}行のデータが挿入されました。");
}
}
}
catch (SqlException ex)
{
Console.WriteLine($"SQLエラーが発生しました: {ex.Message}");
}
catch (Exception ex)
{
Console.WriteLine($"エラーが発生しました: {ex.Message}");
}
}
}
コードの解説
- 接続文字列: SQL Serverに接続するために必要な情報を含む文字列です。実際の環境に合わせて変更する必要があります。
- SqlConnection:
using
ステートメントを使用して、接続を確実に閉じるようにしています。 - INSERT文: パラメータ化されたクエリを使用しています。これはSQLインジェクション攻撃を防ぐために重要です。
- SqlCommand: INSERT文とデータベース接続を使用してSQLコマンドを作成します。
- パラメータの設定:
AddWithValue
メソッドを使用して、安全にパラメータ値を設定します。 - ExecuteNonQuery: INSERT、UPDATE、DELETEなどのデータ操作言語(DML)コマンドを実行する際に使用します。影響を受けた行数を返します。
- 例外処理: SQLエラーと一般的な例外を別々に捕捉し、適切なエラーメッセージを表示します。
注意点
- 実際のアプリケーションでは、接続文字列を設定ファイルなどで管理することをおすすめします。
- 大量のデータを挿入する場合は、バルクインサートなどの最適化された方法を検討してください。
- トランザクションを使用することで、複数の操作をまとめて実行し、データの一貫性を保つことができます。
まとめ
C#でSQL ServerにINSERT操作を行う基本的な手順は以下の通りです:
- 適切な接続文字列を用意する
- SqlConnectionオブジェクトを作成し、接続を開く
- パラメータ化されたINSERT文を作成する
- SqlCommandオブジェクトを使用してクエリを実行する
- 影響を受けた行数を確認する
これらの基本的な手順を理解し、適切に実装することで、C#アプリケーションからSQL Serverデータベースにデータを安全かつ効率的に挿入できるようになります。データの挿入は、より複雑なデータベース操作の基礎となる重要なスキルです。
コメント