C# でのトランザクション処理の実装方法
トランザクション処理を実装するには、まずデータベース接続を確立し、BeginTransaction() メソッドを使用してトランザクションを開始します。続いて、SqlCommand オブジェクトの Transaction プロパティに取得したトランザクションを割り当てます。コマンドを実行後、Commit() メソッドでトランザクションを確定、または Rollback() を使って取り消すことができます。
...
8月12日 15:46 投稿
SQL Serverの大容量データ環境におけるパフォーマンス最適化ガイド
1. インデックス設計とメンテナンス戦略
データ容量が増加するとフルテーブルスキャンが発生し、応答時間が劣化します。検索コストを削減するためのインデックス設計が基本となります。
クラスタ化インデックス: データの物理格納順序を決定します。主キーに適用し、範囲抽出やソート処理の基盤とします。
非クラスタ化インデックス: 物理データとは独立したポインタ構造 ...
8月1日 16:56 投稿
hierarchyidデータ型の使用方法と主要メソッド
テーブル定義の例
CREATE TABLE [dbo].[Employee](
[ID] [int] IDENTITY(1,1),
[Name] [nvarchar](50),
[Position] [hierarchyid],
)
初期データの投入
INSERT INTO Employee(Name,Position) VALUES('社长','/')
INSERT INTO Employee(Name,Position) VALUES('営業部長','/1/')
INSERT Employee(Name,Position) VALUES('技術部長','/2/')
INSERT Employee(Nam ...
7月29日 22:44 投稿
Java + SQL Server でデータベースの全テーブル構造をMarkdownドキュメントに自動エクスポートする
特に複数人でのプロジェクト開発において、データベースのテーブル構造ドキュメントは欠かせないものです。しかし、手作業で整理するのは効率が悪く、エラーも発生しやすいのが実情です。
本記事では、Javaを使用してSQL Serverに接続し、全てのテーブル構造を自動でMarkdownファイルにエクスポートするツールを紹介します。これにより、チームで構造を確認したり、技術ド ...
7月24日 16:26 投稿
T-SQLデータベース操作の基礎と応用
データベースの作成
SQL Serverで新しいデータベースを作成するには、CREATE DATABASE文を使用します。主ファイルとログファイルの両方を明示的に定義できます。
CREATE DATABASE SampleDB
ON PRIMARY (
NAME = 'SampleDB_Data',
FILENAME = 'C:\Data\SampleDB.mdf',
SIZE = 5MB,
MAXSIZE = 30MB,
FILEGROWTH = 5%
)
LOG ON (
NAME = 'SampleDB_Lo ...
7月21日 02:04 投稿
SQL Serverにおけるトランザクションとロックの仕組み
トランザクションとロックの基本概念
トランザクション:データの一貫性と回復性を保証するための不可欠な仕組み。
ロック:複数ユーザーが同じデータベースリソースにアクセスする際、アクセス順序を管理するメカニズム。これがないとトランザクションの信頼性が損なわれる。
デッドロック:データベースパフォーマンスを著しく低下させる要因の一つで、複数トランザクシ ...
7月17日 00:47 投稿
SQL Serverのデータベース管理に不可欠なシステムビュー一覧
メタデータ参照とシステムビューの役割
SQL Serverでは、データベース内部の構造、セキュリティ設定、実行中のクエリ状態を把握するために sys スキーマが提供するシステムビューを参照します。これらのビューは、従来のレガシーテーブルよりも構造化されており、スキーマ設計の確認やパフォーマンスチューニングの基盤として不可欠です。
オブジェクト構成と列情報の取得 ...
7月10日 18:21 投稿
SQL Serverのディスク容量とデータベースFileInfo収集
SQL Serverのディスク使用状況やデータベースFileInfoを収集するための以下の方法を紹介します。
1. ディスクパーティションの空き容量確認
EXEC xp_fixeddrives
2. データベースファイルの詳細情報を取得
SELECT *
FROM sys.database_files
SELECT name, CAST(size AS FLOAT) * (8192.0 / 1024.0 / 1024.0) AS size_mb
FROM sys.database_files
3. 現在のデータ ...
6月23日 17:39 投稿
Dockerを使用したMS SQL ServerのセットアップとNavicatによるリモート接続
Microsoft SQL Server概要
Microsoft SQL Server(SQL Server)はマイクロソフトが開発したリレーショナルデータベース管理システムです。強力で高性能なエンタープライズ級データベースプラットフォームとして、大規模データセットの保存と処理、効率的なクエリと分析操作をサポートします。SQL ServerはT-SQL、ADO.NET、ODBC、OLE DBなど幅広いアプリケーション開発イン ...
6月17日 21:08 投稿
JavaによるSQL Serverへの大規模データ挿入手法
JDBCバッチ処理を使用した大量データ挿入
大量のデータをSQL Serverに挿入する際には、JDBCのバッチ処理機能を活用することでパフォーマンスを向上させることが可能です。この手法では複数のINSERT文をまとめて送信することで、ネットワーク通信のオーバーヘッドを削減できます。
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.P ...
6月7日 23:12 投稿