mysqlの研究ノート(4)_TCL(トランザクション制御言語)とビュー

## TCL(トランザクション制御言語)トランザクション制御言語


   取引の概要:
        1またはSQL文の実行ユニットから成るグループ、実行ユニットは、いずれかのすべての実行または全部を実行していない 
        1文が失敗した場合や、エラーが発生した場合、ユニット全体がロールバックされます。影響を受けたすべてのデータは始まった事務の以前の状態に戻ります。
        すべてのユニットのSQL文が正しく実行されている場合は、トランザクションが正常に実行される
    :ストレージエンジンを
        MyISAMの 
        メモリ
       のInnoDB(支援サービス)デフォルトのストレージエンジンを
        .....
#ビューストレージエンジンの
ショーエンジン。

#################
### トランザクションのACID特性
#################

 ①、アトミック(不可分)
 アトミックいずれかの取引が行われたか、行われていない操作し、不可分の単位で取引を意味し
 
 、一貫性(一貫性)②
 取引が別の一貫した状態にある一貫した状態からデータベースを変換する必要があります。(そのような別の人の転写後の2人の男性の量等の変化しない)
 
 ③、分離(単離)
 他のトランザクションを妨害しないトランザクションを実行します。すなわち、他のトランザクションの同時実行のトランザクション内のデータの操作および使用は、個々のトランザクションの間に隔離され、互いに同時に実行を妨害することができない
 
 ④、永続的な(耐久REV)
 永続性は、トランザクションのコミット後、そのデータベース内のデータを参照し変化は永久的であり、その後、他の操作と、そのデータベースに障害がいかなる影響を与えるべきではありません。

#トランザクションを作成します:
    暗黙的なトランザクション:トランザクション明白な開閉タグを。このような挿入、更新、削除の文と
    明示的なトランザクショントランザクションは明確な開始タグと終了タグがあります。


#1ターン総務
SETの自動コミット= 0;
トランザクション開始。

SQL文を書く#2。

#3トランザクションが終了
コミット;
ROLLBACK;

トランザクションで使用#DELETE違いと切り捨て

#1演示削除します。
設定された自動コミット= 0。
トランザクションを開始。
COPY2から削除します。
ロールバック;
COPY2から*を選択します。

#2演示トランケート。
セットの自動コミット= 0。
トランザクションを開始。
切り捨てテーブルt_course。
ロールバック;
t_courseから*を選択します。

#################
### ビュー
#################

    意味:仮想テーブルで使用すると、通常のテーブル
    MYSQL5。新機能の1つのバージョンでは、テーブルが動的データによって生成され、表示される
    
   シナリオ: 
        1.複数の使用同じローカルクエリ結果
        2. SQL文は、より複雑な使用の結果照会する

。ビューを作成#を
    構文: 
        ビュービュー名を作成します 
        クエリと
    ビューの利点: 
        1.再利用SQL文 
        2.簡素化複雑なSQL操作は、お問い合わせの内容を知っている必要はありません 
        。3.データ保護を、およびセキュリティの 
        
               実際の物理アドレスによって占められるかどうかのキーワード構文作成 
    専用のビューを作成するビュー保存をSQL CRUDロジック(推奨されません)    
    表がCRUD格納されているテーブルデータを作成します

 

#1は、情報の16人の学生よりも古い学生のビューを作成する
ビューmystudent作成
AS
t_studentからSELECT *をWHERE年齢> 16;

16歳以上#2ビュービュー学生情報学生
mystudentから選択*;

#第二には、ビューの変更 

    クエリとしてビュービュー名を作成したり、交換してください:構文1
    クエリとしてALTERビュービュー名:構文2を 
 

#第三には、ビューの削除

    構文を:ドロップビュービュー、ビュー、...
 

#第四に、ビューを参照するには 
降順mystudentを、
ビューの作成mystudentを表示します。


#ファイブは、ビューの更新

状況は、ビューを更新しないことがあります。
    1.ビューを持つ、によって機能、明確な、グループをグループ化する含まれている労働組合またはすべての連合
    2.定数が表示
    サブクエリが3ビューを


作成して表示myem
AS
SELECT *からt_employee;

。#1ビューに(元のテーブルがあります)
myemからSELECT *;
INSERT INTOのmyem(ID、名前、職業、MGR)の値(1014、 'ヒーバー'、 '人事ディレクター'、1001);

2位修飾(原稿台にも変更)
更新myemセット名ID = 1007 =「Vetor」。

#3の削除は、(また、元のテーブルを削除)
WHERE myem上記ID = 1014から削除します。

公開された60元の記事 ウォン称賛10 ビュー9174

おすすめ

転載: blog.csdn.net/chaseqrr/article/details/104522349