[웹 서비스 개발] phpMySQL_Connection_1_24

김광일·2024년 11월 15일

웹 서비스 개발

목록 보기
34/45

일자 : 24-2 12주차 2차시 (2)

[1] MySQL이란 무엇인가?

1) MySQL이란?

  • MySQL은 웹에서 사용되는 데이터베이스 시스템이다.
  • MySQL은 서버에서 실행되는 데이터베이스 시스템이다.
  • MySQL은 소규모 및 대규모 애플리케이션 모두에 적합하다.
  • MySQL은 매우 빠르고, 신뢰성이 높으며 사용하기 쉽다.
  • MySQL은 표준 SQL을 사용한다.
  • MySQL은 다양한 플랫폼에서 컴파일된다.
  • MySQL은 무료로 다운로드하여 사용할 수 있다.
  • MySQL은 Oracle Corporation에서 개발, 배포, 지원한다.
  • MySQL의 이름은 공동 창립자 몬티 위디니우스(Monty Widenius)의 딸 "My"에서 유래했다.

2) 특징

  • MySQL 데이터베이스의 데이터테이블에 저장된다.
  • 테이블은 관련 데이터의 모음이며, 열(컬럼)과 행(로우)으로 구성된다.
  • 데이터베이스는 정보를 카테고리별로 저장하는 데 유용하다.
    • 예를 들어, 한 회사는 다음과 같은 테이블을 가진 데이터베이스를 가질 수 있다:
      • Employees (직원)
      • Products (제품)
      • Customers (고객)
      • Orders (주문)
  • 쿼리질문이나 요청을 의미한다.
    • 데이터베이스에서 특정 정보를 쿼리하여 필요한 데이터 세트를 반환받을 수 있다.
  • SELECT LastName FROM Employees
    • 위 쿼리는 "Employees" 테이블에서 "LastName" 열에 있는 모든 데이터를 선택한다.

[2] Open a Connection to MySQL

<?php
$servername = "localhost"; // 데이터베이스 서버 이름 (로컬 서버)
$username = "root"; // 데이터베이스 사용자 이름
$password = ""; // 데이터베이스 사용자 비밀번호 (빈 문자열)


// 데이터베이스 연결 생성
$conn = new mysqli($servername, $username, $password); // MySQLi 객체를 사용하여 데이터베이스 연결 생성

// 연결 확인
if ($conn->connect_error) { // 연결에 오류가 있는지 확인
  die("Connection failed: " . $conn->connect_error); // 연결 실패 시 오류 메시지 출력 후 종료
}
echo "Connected successfully"; // 연결 성공 시 메시지 출력
?>

2) MySQL Connection 하는법

$conn = new mysqli($servername, $username, $password);
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

[3] Creating a database

<?php
$servername = "localhost";
$username = "root";
$password = "";
// Create connection
$conn = new mysqli($servername, $username,
$password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// Create database
$sql = "CREATE DATABASE myDB";
if ($conn->query($sql) === TRUE) {
echo "Database created successfully";
} else {
echo "Error creating database: " . $conn->error;
}
$conn->close();
?>

1) Database Create 사용법

$sql = "CREATE DATABASE myDB";
if ($conn->query($sql) === TRUE) {
    echo "Database created successfully";
}

[4] Creating a table

<?php
$servername = "localhost"; // 데이터베이스 서버 이름 (로컬 서버)
$username = "root"; // 데이터베이스 사용자 이름
$password = ""; // 데이터베이스 사용자 비밀번호 (빈 문자열)
$dbname = "myDB"; // 사용할 데이터베이스 이름

// 데이터베이스 연결 생성
$conn = new mysqli($servername, $username, $password, $dbname); // MySQLi 객체를 사용하여 데이터베이스에 연결

// 연결 확인
if ($conn->connect_error) { // 연결에 오류가 있는지 확인
  die("Connection failed: " . $conn->connect_error); // 연결 실패 시 오류 메시지 출력 후 종료
}

// 테이블 생성 SQL 명령어 정의
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,  // 'id' 컬럼: 정수형, 자동 증가, 기본키 설정
firstname VARCHAR(30) NOT NULL,  // 'firstname' 컬럼: 30자 길이의 문자열, 빈 값 불가
lastname VARCHAR(30) NOT NULL,  // 'lastname' 컬럼: 30자 길이의 문자열, 빈 값 불가
email VARCHAR(50),  // 'email' 컬럼: 50자 길이의 문자열, 빈 값 허용
reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP  // 'reg_date' 컬럼: 타임스탬프, 기본값은 현재 시간, 갱신 시 타임스탬프 자동 업데이트
)";

// 테이블 생성 명령 실행 및 결과 확인
if ($conn->query($sql) === TRUE) { // SQL 명령어 실행 후 성공 여부 확인
  echo "Table MyGuests created successfully"; // 테이블 생성 성공 시 메시지 출력
} else {
  echo "Error creating table: " . $conn->error; // 테이블 생성 실패 시 오류 메시지 출력
}

$conn->close(); // 데이터베이스 연결 종료
?>

1) Table Create 사용법

$sql = "CREATE TABLE MyGuests (
    id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    firstname VARCHAR(30) NOT NULL,
    lastname VARCHAR(30) NOT NULL,
    email VARCHAR(50),
    reg_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
)";

[5] Insert Data Into MySQL Using MySQLi

<?php
$servername = "localhost"; // 데이터베이스 서버 이름 (로컬 서버)
$username = "root"; // 데이터베이스 사용자 이름
$password = ""; // 데이터베이스 사용자 비밀번호 (빈 문자열)
$dbname = "myDB"; // 사용할 데이터베이스 이름

// 데이터베이스 연결 생성
$conn = new mysqli($servername, $username, $password, $dbname); // MySQLi 객체를 사용하여 데이터베이스에 연결

// 연결 확인
if ($conn->connect_error) { // 연결에 오류가 있는지 확인
  die("Connection failed: " . $conn->connect_error); // 연결 실패 시 오류 메시지 출력 후 종료
}

// SQL 쿼리 정의: MyGuests 테이블에 새로운 레코드 삽입
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')"; // 'John', 'Doe', 'john@example.com' 값을 MyGuests 테이블에 삽입

// SQL 쿼리 실행 및 결과 확인
if ($conn->query($sql) === TRUE) { // 쿼리 실행 후 성공 여부 확인
  echo "New record created successfully"; // 레코드 삽입 성공 시 메시지 출력
} else {
  echo "Error: " . $sql . "<br>" . $conn->error; // 삽입 실패 시 오류 메시지 출력
}

$conn->close(); // 데이터베이스 연결 종료
?>

1) Insert 사용법

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
}

profile
안녕하세요, 사용자들의 문제 해결을 중심으로 하는 프론트엔드 개발자입니다. 티스토리로 전환했어요 : https://pangil-log.tistory.com

0개의 댓글