모의해킹 스터디 2주차 정리

2024. 10. 24. 04:42·모의해킹/모의해킹 스터디

데이터베이스란?

  • 데이터를 저장하는 공간이며, 구조화된 데이터의 집합

데이터베이스의 기본 구조

  • 스키마 (Schema)
    • 데이터베이스의 구조를 정의
    • 테이블, 열, 데이터 타입, 제약 조건 등을 포함
  • 테이블 (Table) : 데이터베이스의 기본 구성 단위
    • 열 (Column) : 데이터의 속성, 종류 정의
    • 행 (Row) : 각 행은 개별 데이터를 나타내며, 한 줄에 대한 모든 정보를 포함

SQL 기본 문법

1. DDL (Data Definition Language)

  • 데이터베이스 구조를 정의하고 수정하는 데 사용되는 SQL 명령어의 집합
  • 테이블, 인덱스, 뷰 등을 생성하거나 삭제하는 작업을 수행
    • CREATE: 새로운 데이터베이스 객체를 생성
    • ALTER: 기존 데이터베이스 객체를 수정
    • DROP: 데이터베이스 객체를 삭제

2. DML (Data Manipulation Language)

  • 데이터베이스의 데이터를 조작하는 데 사용되는 SQL 명령어의 집합
  • 데이터의 삽입, 수정, 삭제, 조회를 포함합니다.

문법

  • INSERT : 데이터베이스의 테이블에 새로운 데이터를 추가할 때 사용합니다.
INSERT INTO 테이블명 (컬럼1, 컬럼2, ...)
VALUES (값1, 값2, ...);
  • SELECT : 테이블에서 데이터를 조회할 때 사용합니다
-- 특정 조건 조회
SELECT 컬럼1, 컬럼2, ...
FROM 테이블명
WHERE 컬럼명='값'; -- 조건
-- 전체 조회
SELECT *
FROM 테이블명;
  • UPDATE : 기존 데이터의 값을 수정할 때 사용합니다.
UPDATE 테이블명
SET 컬럼1 = 수정할값1, 컬럼2 = 수정할값2, ...
WHERE 컬럼명='값'; -- 조건
  • DELETE : 테이블에서 데이터를 삭제할 때 사용합니다.
DELETE FROM 테이블명
WHERE 컬럼명 = '값'; -- 해당 조건을 작성하지 않을 경우 테이블의 데이터 전체가 삭제됨

3. DCL (Data Control Language)

  • 데이터베이스에 대한 접근 권한을 제어하는 데 사용되는 SQL 명령어의 집합
  • 사용자 권한을 부여하거나 회수하는 작업을 수행
    • GRANT: 사용자가 특정 권한을 부여
    • REVOKE: 사용자가 특정 권한을 회수

PHP-MYSQL 연동 방법

<?php
    // 데이터베이스 연결 정보 정의
    define('DB_SERVER', 'localhost'); // 서버주소
    define('DB_USERNAME', 'admin'); // ID
    define('DB_PASSWORD', 'student1234'); // PW
    define('DB_NAME', 'WEB_DB'); // DB 명

    // 데이터베이스에 연결
    $db_conn = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);

    $sql = "SELECT * FROM test_table";

    // 정의한 SQL 쿼리를 연결한 데이터베이스에 실행
    $result = mysqli_query($db_conn, $sql);
    var_dump($result);

    // 첫 번째 행을 가져옴
    $row = mysqli_fetch_array($result);
    var_dump($row);

    // 두 번째 행을 가져옴
    $row = mysqli_fetch_array($result);
    var_dump($row);
	
?>

후기

PHP의 mysqli_query 함수를 이용하여 PHP와 연동한 데이터베이스의 쿼리를 실행할 수 있으며, mysqli_fetch_array 함수를 사용해서 데이터의 행을 추출하는 방법을 배웠다. 추후 반복문을 사용하여 데이터베이스의 전체 내용을 가져오거나, 배열을 사용하여 필요한 데이터를 추출하는 방법을 고려하면 좋을 것 같다.

728x90
반응형
저작자표시 비영리 동일조건 (새창열림)

'모의해킹 > 모의해킹 스터디' 카테고리의 다른 글

모의해킹 스터디 2주차 과제(2) - 로그인  (0) 2024.10.28
모의해킹 스터디 2주차 과제(1) - 회원가입  (0) 2024.10.27
모의해킹 스터디 2주차 과제 - Mini Mission  (0) 2024.10.26
모의해킹 스터디 1주차 과제  (0) 2024.10.21
모의해킹 스터디 1주차 정리  (0) 2024.10.21
'모의해킹/모의해킹 스터디' 카테고리의 다른 글
  • 모의해킹 스터디 2주차 과제(1) - 회원가입
  • 모의해킹 스터디 2주차 과제 - Mini Mission
  • 모의해킹 스터디 1주차 과제
  • 모의해킹 스터디 1주차 정리
BPM37093
BPM37093
luna의 IT기술 정리
  • BPM37093
    IT Study Log
    BPM37093
  • 링크

  • 글쓰기 관리
    • 분류 전체보기 (43)
      • 모의해킹 (37)
        • 웹해킹 (1)
        • 모의해킹 스터디 (36)
      • Web (5)
        • 웹 보안 (1)
        • 웹 크롤링 (1)
      • Data (0)
      • Cloud (0)
      • Network (1)
  • 인기 글

  • 방문자 수

    방문자수Total

    • Today :
  • 태그

    HTTP
    Chrome
    httprequest
    mysql
    웹해킹
    메서드
    웹개발
    WEB
    php
    javascript
    hash
    sqlinjection
    Network
    상태코드
    티스토리챌린지
    SQL
    HTML
    모의해킹스터디
    NAT
    HttpResponse
    오블완
    burpsuite
  • hELLO· Designed By정상우.v4.10.1
BPM37093
모의해킹 스터디 2주차 정리
상단으로

티스토리툴바