全ては時の中に…

システム開発全般の技術や開発に役立つツール、プログラミングのサンプルを紹介しています。

テーブル

【VB.NET】SQL Serverのテーブル毎の使用容量を確認する

VB.NETからSQL Serverの指定したデータベース内のテーブル毎の使用容量を取得する方法について説明します。
SQL Serverから使用容量を取得する方法は、記事「【SQL Server】テーブルの使用量を確認する」で紹介したアンドキュメントストアドプロシージャを利用します。

以下、サンプル。
続きを読む

【SQL Server】指定したデータベースのテーブル一覧を取得する

SQL Serverで指定したデータベースのテーブル一覧を取得する方法について説明します。
テーブル一覧を取得する方法には、以下の方法があります。
1.システムビュー(sysobjects)を利用する
2.カタログテーブルを利用する

以下、各方法の説明です。
続きを読む

【SQL Server】テーブルの使用量を確認する

SQL Serverでテーブルで使用している容量やテーブルに格納されているデータ件数を確認する方法について説明します。
容量を確認する方法には、以下の方法があります。
 1.テーブルのプロパティから確認する
 2.アンドキュメンテッド ストアドプロシージャを利用する

以下、確認方法です。
続きを読む

【VB.NET】連想配列(ハッシュテーブル)

【連想配列】
.NETでは、連想配列が利用できる。(他にも利用できる言語はある)
この連想配列は、ハッシュテーブルとして実装されている(※1)。
ハッシュテーブルは、キーと値をセットして保持し、キーを使って値を操作するという特徴を持つ。
指定したキーを使って値を取得する構造となっているため、パフォーマンスは良い。

以下、サンプル。
続きを読む

【SQL】OracleとSQL Serverのダミーテーブルについて

通常は、SQLの結果を得る場合、何らかのテーブルを参照する必要がある。
しかし、時間の取得等のような"ちょっとした確認"でテーブルを参照するのは効率が悪いし、
インデックスに影響を与えてしまう可能性もある。
このような場合に実際のテーブルを参照することなく、SQL文を実行する方法について説明する。

《Oracle》FROM句にDUALテーブルを指定する。

 SELECT SYSDATE FROM DUAL

《SQL SERVER》FROM句を省略する。

 SELECT getDate()
続きを読む

【DB設計】物理削除と論理削除

データベースの設計を行う際に必ずといっていいほど問題となるデータの時効処理(一定期間経過後にデータを削除する機能)がある。

この時効処理は、記憶媒体(ハードディスク等)の容量の都合により、物理的にデータを削除する機能である。(物理的にデータを削除するので、物理削除と呼ぶ)

時効処理は、以下のような観点で基準を決めると良い。
 1.データを分析に使用する期間はどの程度か?
  →不要になったデータ以外は削除してはいけないため、保管期間を決める。
 2.マスタ情報を削除することはないか?
  →参照キーを設定した場合、参照制約により削除不可な場合があるため。
 3.データを保存する媒体の容量は?
  →媒体の大容量化が進んでいるが、データの大容量化も進んでいる。
   そのため、媒体の容量に余裕があるかどうか検討すること。
   (予定していた期間のデータが保存できない状態は避けるべき)

これに対し、容量は問題ないが、余計なデータを表示したくないということで、システムから見えなくする対応を行うのが、論理削除である。

論理削除は、以下のような観点で基準を決めると良い。
 1.システムで表示するデータは、どの期間のものか?
  →不要になったデータは表示しない。
 2.マスタ情報を変更することはないか?
  物理的なデータは残っているため、連鎖更新等をしなければならない。
  (過去分のデータが意味をなさないものになってしまう)
 3.物理削除は、どの程度の期間で行うのか?
  →データの蓄積により、記憶媒体の圧迫が進む。
   そのため、物理削除を必ず考慮する必要がある。

続きを読む

【Oracle】表定義をDESCRIBEコマンドで確認する

【Oracle】テーブル定義をDESCRIBEコマンドで確認する


Oracleには、DESCRIBEコマンドが用意されている。
このコマンドは、SQL*PLUSやiSQL*PLUSで利用でき、指定したテーブルの定義情報を確認するために利用することができる。
ここで言うテーブルの定義情報とは、テーブル構造(項目名、データ型、Null値の許可)を指す。

以下、コマンドの実行方法。
続きを読む

【SQL Server】SQLでテーブルの項目名を取得する

SQL Serverで指定したテーブルの全項目名を取得する方法は、以下の通り。

--項目名を取得する
SELECT syscolumns.name FROM syscolumns
INNER JOIN sysobjects ON (sysobjects.id=syscolumns.id)
WHERE sysobjects.name='テーブル名'

--簡略版
SELECT * FROM syscolumns
WHERE id = object_id('テーブル名')



SQL Server2005以降の場合、以下の方法で取得する。
続きを読む
Recent Comments
Recent TrackBacks
Profile

ふりっつ

システムエンジニア
取得資格:
 ソフトウェア開発技術者
 MCP(70-290)
メールマガジン:
 【出張版】全ては時の中に…

メールマガジン
メルマガ登録・解除
【出張版】全ては時の中に…
 
 powered by メルマガスタンドmelma! トップページへ
ブログランキング
アクセス解析出会い




にほんブログ村 IT技術ブログへ

にほんブログ村 IT技術ブログ プログラム・プログラマへ

Amazon
スポンサー
HonyaClub.com

PCDEPOT WEB本店/OZZIO

FUJIFILMMALL(フジフイルムモール)

IT 関連資格ならクラムメディア問題集

  • ライブドアブログ