ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • MariaDB 사용법
    Study/데이터베이스 | DB 2019. 11. 25. 18:22

    MariaDB : 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)

    본인은 윈도우와 AMAZONE EC2 서버에 MariaDB를 설치해보았다. 
    설치법은 각각 다르지만, 쿼리문들은 똑같으므로 해당글에 적어보겠다. 

    ------------------------------------------------------------------------------------------------------
    1. DataBase 확인
    show databases;

     

    =>MariaDB내에 존재하는 Database들을 볼수 있다. 

     

     


    2. DataBase 사용
    use sailors_and_boats;

    =>가상의 sailors_and_boats라는 DB에 들어간다. 

     

     

     

     

    3. Reserves 테이블 생성

    create table reserves ( sid int, bid int, day char(20), primary key(sid, bid , day) );

     

    =>reserves라는 테이블을 만들고, 해당 튜플들을 선언한다. Primary key 역시 선언가능하다. 

     

     

     

     

    4. Reserves 테이블내에 foreign key 추가 
    ALTER table Reserves 
     add foreign key(sid) references Sailors(sid),
     add foreign key(bid) references Boats(bid);

     

    =>reserves 테이블에 foreign key를 추가한다. 

     

     

     

    5. Sailors에 values 추가 
    INSERT INTO Sailors (sid, sname, rating, age)
    VALUES(22, 'Dustin', 7, 45.0), (29, 'Brutus', 1, 33.0), (31, 'Lubber', 8, 55.5), (32, 'Andy', 8, 25.5), 
    (58, 'Rusty', 10, 45.0), (64, 'Horatio', 7, 35.0), (71, 'Zorba', 10, 16.0), (74, 'Horatio', 9, 35.0),
    (85, 'Art', 3, 25.5), (95, 'Bob', 3, 63.5);

     

    =>Sailors 테이블에 튜플들을 추가한다. 

     

    **Reserves가 sailors의 속성을 참조하는 경우, sailors의 테이블이 생성된 이후에 reserves 테이블에 추가가 가능하다. 

     

     

     

     

    6. 나이가 40 이하인 뱃사람들의 이름과 rating을 반환하는 질의문을 작성하시오.
     
    SELECT sname, rating
    FROM Sailors S  =>sailors를 s로 부르겠다는 의미이다. 굳이 안써도 상관없다
    WHERE age<=40;

     

     

     


    7. 적어도 한 척의 배를 예약한 뱃사람의 이름을 구하시오. 

    SELECT sname
    FROM Sailors S, Reserves R
    WHERE S.sid = R.sid;
    # 중복된 sname을 삭제하고 싶다면 GROUP BY sname 을 마지막에 붙이면 된다


     

     업데이트와 삭제 

     

     


    8. 이름이 Bob인 뱃사람의 rating을 9로 바꾸시오. 

    update sailors set rating = 9 where sname='Bob';

    =>update는 table을 안써도된다 그냥 바로 table이름을 쓰면된다.

     


    9. 이름이 Zorbia인 뱃사람을 s3에서 삭제하시오. 

    DELETE FROM Sailors
    WHERE Sailors.sname = 'Zorbia';

     

     

     

    댓글

Designed by Who.