Primary Key/Quiz


👩🏼‍💻 Primary Key(PK)


  • テーブルに作成されたKeyプロパティ:プライマリ・キー、リファレンス・キー、外部キー、スーパー・キー、...

  • テーブルを作成するときは、特定のカラムにプライマリ・キー(Primary Key)を指定して使用します.

  • PKを使用して一意性の問題を解決します(データを繰り返すことはできません)

  • プライマリ・キーの使用時に適用される制約
    :重複値を入力できません.
    /null(未入力状態(の値、Null値)入力不可(not null)

  • クエリーにPKを適用する方法
    :「制約」リージョンに指定する列を入力します.
    設定/テーブル後、カッコを閉じる前にconstraintsコマンドを使用して記入します.

  • 入力バーの資料を推定して設定します.
    ex)同じ内容でよろしいでしょうか.if X=>PK適用範囲
    将来同じ内容が存在する可能性がありますか.O=>PKがXに適用される場合
    /nullを使用できます(未入力のままでもいいですか?)O=>PKが適用される場合

  • 1つまたは2つの欄を組み合わせてPKを指定できますが、それぞれ2つの欄に指定することはできません.

  • テーブルの作成後にプライマリ・キーを適用
  •   alter table list
      add primary key (C/N);
  • テーブルの作成時にプライマリ・キー
    alter table list
    drop primary key;
    
    2
  • を削除
    pkから2つのカラム
  • までの
  • を指定します.
    create table T/N(
       	......
        constraint primary key(C/N, C/N)
      );

    Quiz)


    create database mallDB;
    use mallDB;
    
    create table goodsinfo(
    num		int			unique,			
    code	char(5)		primary key,	
    name	char(30),
    price	int,
    maker	char(20)
    );
    
    insert into goodsinfo values 
    (1, 'A001', '디지털TV', 520000, '제일'),
    (2, 'A002', 'DVD', 240000, '제일'),
    (3, 'U101', 'DSLR', 830000, '우수'),
    (4, 'U102', '전자사전', 160000, '우수'),
    (5, 'H704', '전자렌지', 90000, '하나');
    
    select * from goodsinfo;
    
    set sql_safe_updates = 0;
    update goodsinfo set price = 750000 where num = 3;
    select * from goodsinfo;
    
    select * from goodsinfo where maker = '%제일%'; #셀 내용 모두 동일
    
    select * from goodsinfo where name like '%TV%'; #셀 내용 중 일부
    
    select * from goodsinfo order by code desc;
    
    select * from goodsinfo order by maker asc, price asc;
    
    delete from goodsinfo where code = 'A002';
    select * from goodsinfo;
    
    
    select
    num as 번호,
    code as 상품번호,
    name as 상품명,
    price as 가격,
    maker as 제조사
    from goodsinfo;