SQL Basic - 알아야 할 사항! (기초)

SQL 구문의 주요 구성 요소:



데이터 정의 언어(DDL)



사용자가 데이터 구조 및 개체를 수정할 수 있도록 하는 일련의 명령문입니다. 테이블
  • CREATE 문

  • CREATE object_type object_name;
    
    CREATE TABLE object_name(column_name data_type);
    
    CREATE TABLE sales(purchase_no INT);
    


  • ** ALTER** 문
    기존 개체를 변경할 때 사용됩니다. ADD, REMOVE, RENAME

  • -- Add a column in a table
    ALTER TABLE sales
    ADD COLUMN date_of_purchase DATA;
    
    -- delete an entire table   
    DROP TABLE customer;
    
    -- Rename a table   
    RENAME TABLE sales TO customer;
    


  • TRUNCATE 문DROP를 통해 전체 테이블을 삭제하는 대신 해당 데이터를 제거하고 데이터베이스에서 객체로 계속 유지할 수 있습니다.

  • 데이터 조작 언어(DML)



    데이터베이스 테이블의 데이터를 조작할 수 있는 명령문.
  • SELECT 문SELECT … FROM..

  • -- deliver all the records in the table.
        SELECT* FROM sales; 
    -- Select specific specific data from the database. 
    SELECT row FROM sales;      
    


    INSERT 문
    테이블에 데이터 삽입 사용됨INSERT .. INTO .. VALUES …;
    -- Choose specific cell to insert values
    INSERT INTO sales (purchase_number, date_of_purchase) 
    VALUES(1, 12-09-2020);
    
    -- Insert value
    INSERT INTO sales VALUES(1, 12-09-2020);
    


  • UPDATE 문UPDATE.. SET.. WHERE테이블의 기존 데이터를 갱신할 수 있습니다.

  • UPDATE sales
    SET date_of_purchase = 16-11_2020
    WHERE purchase_number =1;
    


  • DELETE 문DELETE… FROM… WHERE테이블에서 제거할 항목을 지정합니다.

  • DELETE FROM sales
    WHERE purchase_number =1;
    


    데이터 제어 언어(DCL)



    GRANT 및 REVOKE 문. 그들은 데이터베이스를 사용하고 관리자가 사용하는 사람들의 권리를 허용합니다.
  • GRANT 문
    사용자에게 특정 권한을 부여합니다.

  • GRANT type_of_permission ON database_name.table_name TO username@localhost
    
    -- Creates user `ochwada` whose password is "password"
    CREATE USER ochwada@localhost IDENTIFIED BY password;
    
    -- Allow the user to use all SELECT Statements on the table 'customer' from the 'sales' database.
    GRANT SELECT ON sales.customers To ochwada@localhost;
    
    -- Use all statements and all tables in the 'sales' database.
    GRANT ALL ON sales.* To ochwada@localhost;
    
    


  • REVOKE 절
    데이터베이스 사용자의 권한 및 권한을 철회하는 데 사용됩니다.

  • REVOKE type_of_permission ON database_name.table_name TO username@localhost
    
    -- Only the use of SELECT statement will be REVOKED for the table customers in the sales database.  
    REVOKE SELECT ON sales.customers To ochwada@localhost;
    
    -- use of all statements in the 'sales' database will be revoked.   
    REVOKE ALL ON sales.* To ochwada@localhost;
    
    


    TCL(트랜잭션 제어 언어)



    데이터베이스에 대한 모든 변경 사항이 자동으로 저장되는 것은 아닙니다.
  • COMMIT 문INSERT, DELETE, UPDATE 관련 .
    변경 사항을 영구적으로 저장합니다.
    다른 사용자가 수정된 버전의 데이터베이스에 액세스할 수 있도록 허용합니다.

  • UPDATE sales
    SET date_of_purchase = 16-11_2020
    WHERE purchase_number =1;
    
    COMMIT;
    


  • ROLLBACK 절
    한 발 물러서게 해주는 조항.
    변경 사항을 실행 취소할 수 있지만 영구적으로 저장하고 싶지는 않습니다.

  • UPDATE sales
    SET date_of_purchase = 16-11_2020
    WHERE purchase_number =1;
    COMMIT;
    
    ROLLBACK;
    

    좋은 웹페이지 즐겨찾기