SQLベース

4156 ワード

SQLの利用


ツールの環境設定の使用


  • oracle xe

  • SQLDDeveloperのインストール

  • OracleXEのインストール後に環境変数を設定する必要があります
    ​ C:\app.....\product\18.0.0\dbhomeXE\bin

  • 環境変数設定後cmd
    $sqlplusシステム/パスワード
    入力後はSQL$に変更されます
  • 1.DDL言語=データ定義言語


    データ定義言語
    作成
  • Dropの作成、削除、Alter
  • の変更

    2.DML言語=データ管理言語


    データ操作言語

  • Insert登録:テーブル名値に挿入()

  • Select抽出:テーブル名から列名を選択

  • 削除さくじょ:テーブル名から削除さくじょ

  • 更新の変更:テーブル名setフィールドの更新=値の変更
  • 3.DCL言語=データ制御言語


    データせいぎょげんご
  • grant, revoke, commit, rollback, checkpoint
  • トランザクション制御言語commitとrollbackをTCLと呼びます

    Oracle SQLコマンド


    単純命令


    SQL>exit:SQLを終了
    SQL>clear screen:すべての画面をクリア
    SQL>show user:現在のユーザー情報
    SQL>desc insa:テーブル構造の確認
    SQL> commit; : 現在の状態を保存します.変更後にロールバックすると、最後のcommitが返されます.
    column=列

    テーブルの削除


    dropテーブル名;
    	drop table insa; // 에러발생. 없는 테이블을 삭제하려해서

    テーブルの作成


    create tableテーブル名(カラム名フォーマット(ビット数)notnull(スペースXX)primary key(繰り返しXX);
       create table insa (
    	sabun 열이름 number(4) not null primary key,
    	name 열이름 varchar(10) not null,
    	buse 열이름 varchar(20) not null
       ) ;

    データ登録=追加


    INSERT INTOテーブル(フィールド名、...)value(データ値、...);
    SQL> insert into insa(sabun, name, buse)
    2値(7800,「hong」,「電算開発」);
    3値(1300、「lee」、「海外営業」);
    4値(2400,「kim」,「電子開発」);

    読み込み


    SQL>select列名、...従属テーブル名
    テーブル内のすべてのカラムを読み込むときに、カラム名ではなく*を使用します.
    ​ SQL> select * from insa;
    ​ SQL> select sabun, name, buse from insa ;
    条件に応じてロードすることもできます
    ​ SQL> select max(sabun) from insa;
    ORDER BYを使用して値でソートできます(数値文字でも構いません)
    ​ SQL> select * from insa order by sabun asc; こうさ

    EX. insa table


    --insaテーブルpayカラム名追加番号(3)not null--
    ​ alter table insa add pay number(3) not null
    制約条件××報酬条件3000~7500を繰り返す(名前は重複可能でなければならない)
     sabun   name   buse gender salary  wdate
    
      7800  홍길동 전산개발  남자  4500  20020103
    
      1300  이순신 해외영업  여자  4900  20010916
    
      2400  김철수 전산개발  남자  3400  20190130

    SQLドキュメントの作成


    editコマンドの使用
    SQL>editロケーションファイル名.sql
    メモ帳ウィンドウを開いてsqlドキュメントを作成
    drop table insa ; --같은 이름의 테이블 존재못하게
    
     
    
    create table insa (
    
     sabun number(4) not null primary key , --기본키 설정
    
     name varchar(10) not null ,
    
     buse varchar(20) not null
    
    ) ;
    
    commit ;
    
    desc insa
    
    insert into insa(sabun, name, buse) values(9900, 'kim', '회계') ; --행 추가
    
    commit ;  --현 상태 저장
    
    select sabun, name, buse from insa ; --insa 테이블에서 불러오기
    保存→ウィンドウを閉じる
    呼んだとき.
    SQL>startの場所ファイル名.sql
    startの代わりに@を使うことができます

    DMLデータオペレータ


    挿入


    表(フィールド名)の値(値1、値2、...)に挿入します.

    クエリーの選択


    フィールド1、フィールド2、...fromテーブル名を選択します.
    select*fromテーブル名;

    削除さくじょ


    テーブル名から削除するすべてのデータを削除
    条件:->のテーブル名から削除条件を満たすデータのみ削除
    ​ ex. delete from tables where sabun > 5000;

    更新の変更


    updateテーブル名setフィールド=値の変更すべてのデータの変更
    updateテーブル名setフィールド=値where条件の変更;

    Oracleでの表示


  • 日付sysdate

  • シーケンスrownum

  • スタックテーブルdual
  • ex.
    SQL> select rownum, insa.* from insa;
       ROWNUM      SABUN  NAME                 BUSE
    
    ---------- ---------- -------------------- --------------------
    
            1        5500 kim                  code
    
            2        2200 test                 ex
    
            3        2000 aa                   bb

    Spool


    SQL>spoolパスファイル名
    SQL> spool off
    閉じる前に作成したすべてのコマンドと結果がtxtファイルとして書き込まれます.

    formatコマンド


    文字列の場合


    *col列名a;*
    *列名format a;
    の数値を出力に割り当てるセルの数
    ex. SQL> col name for a10; -> name列は10格子です
    NAME
    ----------
    ~~~~

    ディジタル時


    *col列名for 999;*
    *col列名for 9999;*
    デジタル資料型のみに適用!
    出力桁数を9に指定した数値タイプ
    ex.
    999–3桁未満の数字のみ出力可能、3桁を超える場合は###
    ID
    ----
    ####