MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

SQLのテーブル、ビュー、シノニムの違いを説明する


構造化照会言語(SQL)のテーブル、ビュー、および同義語を理解しましょう。

テーブル、ビュー、および同義語

テーブルはデータのリポジトリであり、テーブル内では物理エンティティです。テーブルはデータベースに物理的に存在します。

ビューは、データベースの物理的表現の一部ではありません。プリコンパイルされているため、データの取得が高速に動作し、安全なアクセシビリティメカニズムも提供されます。

同義語は、テーブル、ビュー、シーケンス、またはプログラムユニットに割り当てられた別名です。

テーブルemployee(empID整数主キー、名前varchar2(30)、スキルvarchar2(30)、給与番号(20)、DOB日時)を作成します。

ユーザーのグループに給与が表示されないシナリオがあるとしましょう。許容される情報を表示するためのビューが作成される場合があります。

ビューemp_some_detailsを(employeeからempID、name、skill、DOBを選択)として作成します。

プログラム

以下に示すのは、上記の例のSQLでテーブル、ビュー、およびシノニムを作成するためのプログラムです-

create table employee (empID integer primary key, name varchar2(30), skill varchar2(30), salary number(20), DOB datetime);
insert into employee values(100,'AAA','JAVA',30000,2020-08-20);
insert into employee values(101,'BBB','PHP',35000,2020-07-02);
select * from employee;

create view [salary_hide] as select empID,name,skill,DOB from employee ;
select * from salary_hide;

出力

次の出力が得られます-

100|AAA|JAVA|30000|1992
101|BBB|PHP|35000|2011
100|AAA|JAVA|1992
101|BBB|PHP|2011

ビューの利点

ビューを使用する利点は次のとおりです-

  • テーブル、複数のテーブル、ビュー、複数のビュー、またはこれらの組み合わせからデータにアクセスする場合があります。

  • ビューはそのベーステーブルのデータに接続します。

  • データアクセシビリティの安全なメカニズムを提供します。

ビューは、CREATE ORREPLACEVIEWステートメントで更新できます。

構文は次のとおりです-

sql create or replace view view-name As
SELECT column1, column2, ...
FROM table_name
WHERE condition;

ビューを削除するには、ドロップビューコマンド-

を使用できます。
DROP view view-name;

シノニムは、テーブルまたはビューに割り当てられる代替名として使用されます。これは、実際のエンティティの元の名前と所有者をシャドウイングするために使用される場合があります。同義語へのパブリックアクセスを許可することにより、テーブルの範囲を拡張します。


  1. |の違いおよび||またはphpの演算子

    |ビットごとのOR演算子 |演算子はビットごとのOR演算子であり、対応するビットのいずれかが1の場合、ビットを1に設定するために使用されます。 ||論理OR演算子 ||は論理Or演算子であり、全体として完全なオペランドで機能します。 例 次の例は、「|」の使用法を示していますvs||演算子。 <!DOCTYPE html> <html> <head>    <title>PHP Example</title> </head> <body>    <?php &

  2. C#のconstキーワードとreadonlyキーワードの違いを説明する

    C#では、constキーワードとreadonlyキーワードの両方を使用して、宣言された後は変更できない不変の値を定義します。ただし、2つの間にいくつかの重要な違いがあります。 const const修飾子は、コンパイル時に既知であり、変更されない、つまり不変である定数値を宣言します。 C#では、組み込みの型のみをconstとしてマークできます。クラス、構造体などのユーザー定義型はconstにすることはできません。また、メソッド、プロパティ、イベントなどのクラスメンバータイプを定数としてマークすることはできません。 宣言中に定数を初期化する必要があります。 class Period{ &