SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
MySQL을 이용한
데이터베이스 실습

웹데이터베이스 구축 및 실습
자료 관리


MySQL을 이용한 데이터베이스 실습
INSERT : 자료의 입력- PART I
만들어져 있는 Table에 자료를 저장한다.
http://dev.mysql.com/doc/refman/5.1/en/insert.html
  • 위 링크의 기본 형을 바탕으로 새롭게 다음과 같은 형태를 추천한다.


     INSERT INTO tbl_name [(col_name, … )]
                  VALUES (value, …), … , (value);
자료 입력
    > INSERT INTO major (mid, mname) VALUES (1, '통계학과');
    > INSERT INTO major (mname) VALUES ('수학과‘);
    > INSERT INTO dept_tab VALUES
   +> (3, '컴퓨터공학과'),
   +> (4, '전자공학과');
                                  > SET CHARATER SET euckr;

한림대학교 웹데이터베이스 - 이윤환
UPDATE : 자료의 변경
기존 데이터의 행을 선택해서 특정 열의 값 변경
  • 조건절이 없으면 전체 테이블의 지정한 열의 값을 하나로 변경한다.

행의 선택 (WHERE 문)
  • DB는 기본적으로 행단위로 데이터를 다룬다.
  • WHERE는 특정 조건을 주어 해당 조건에 맞는 행을 선택하도록 한다.
  • 조건들은 AND와 OR 에 의해 결합된다.
http://dev.mysql.com/doc/refman/5.1/en/update.html 을 바탕으로 다음과
같이 사용한다.
         UPDATE tbl_name SET
         col_name1={expr1|DEFAULT}
         [, col_name2={expr2|DEFAULT}] ...
         [WHERE where_condition]
         [ORDER BY ...]
         [LIMIT row_count]

한림대학교 웹데이터베이스 - 이윤환
UPDATE : 자료의 변경
예제
 • 학생정보에서 학과 코드 3을 2로 잘못 입력하여 변경
     • student 에서 smajor가 2인 행을 찾아 3으로 변경
  > UPDATE student SET smajor = 3 WHERE smajor = 2;

 • 컴퓨터 공학과의 이름이 둘리인 학생이 이름을 희동이로 개명하여
   바꾸고자 한다.
     • 둘리가 이름인 학생이 여러명 있을 수 있으므로 학과 코드가
       3이고 이름이 둘리인 학생의 이름을 희동이로 변경한다.
  > UPDATE student SET sname = '희동이'
 +> WHERE sname = '둘리' AND smajor = 3




한림대학교 웹데이터베이스 - 이윤환
DELETE : 자료 삭제
조건에 맞는(WHERE) 행을 선택하고 삭제
http://dev.mysql.com/doc/refman/5.1/en/delete.html 을 바탕으로 다
음과 같이 사용한다.

          DELETE   FROM tbl_name
          [WHERE   where_condition]
          [ORDER   BY ...]
          [LIMIT   row_count]
예제
  • 학번이 20121001번인 학생의 데이터를 삭제하라.
      > DELETE FROM student WHERE sid = ‘20121001’;
  • WHERE 이후가 생략되면 해당 테이블의 전체 데이터 삭제
      > DELETE FROM student_tab;



한림대학교 웹데이터베이스 - 이윤환
SELECT : 자료 검색
실제 DB에서 가장 많이 사용되는 기능
조건에 부합(WHERE) 하는 행을 선택하여 보여준다.
http://dev.mysql.com/doc/refman/5.1/en/select.html


SELECT select_expr [, select_expr ...]
  [FROM table_references
  [WHERE where_condition]
  [GROUP BY {col_name | expr | position}
    [ASC | DESC], ... [WITH ROLLUP]]
  [HAVING where_condition]
  [ORDER BY {col_name | expr | position}
    [ASC | DESC], ...]
  [LIMIT {[offset,] row_count | row_count OFFSET offset}]



한림대학교 웹데이터베이스 - 이윤환
SELECT : 자료 검색
예제
 • 원활한 실습을 위해 다음 입력
      INSERT INTO student VALUES
         (NULL, '20121001', '고길동', 51, ‘M’, 1),
         (NULL, '20121002', '둘리', 25, ‘M’, 2),
         (NULL, '20121003', '희동이', 5, ‘M’, 1),
         (NULL, '20121004', '도우너', 24, ‘M’, 3),
         (NULL, '20121005', '또치', 28, ‘M’, 4),
         (NULL, '20121006', '마이콜', 41, ‘M’, 1),
         (NULL, '20121007', '철수', 10, ‘M’, 3),
         (NULL, '20121008', '영희', 11, ‘F’, 2);




한림대학교 웹데이터베이스 - 이윤환
SELECT : 자료 검색
 • 학과 코드 1번에 해당하는 학생 검색
    SELECT * FROM student WHERE smajor = 1;

 • 학과 코드 1번에 해당하는 학생들의 학번과 이름 검색
    SELECT sid, same FROM student WHERE smajor = 1;

 • 학과별 학생수검색
    • count(열이름) : 열의 숫자 반환;
    SELECT smajor, count(smajor) as '명'
                 FROM student GROUP BY smajor;

 • 학과 코드가 1인 학과를 제외한 학과별 학생수 검색
    SELECT smajor, count(smajor) as '명'
                 FROM student GROUP BY smajor
                 HAVING smajor <> 1;



한림대학교 웹데이터베이스 - 이윤환
SELECT : 자료 검색
 • 과목코드 순으로 학번과 학생 이름 출력 (동일 학과 내에
   서는 학번의 역순)
    SELECT smajor, sid, same
                 FROM student
                 ORDER BY smajor ASC, sid DESC;


 • 학번이 가장 빠른 학생의 학번과 이름 출력
     • 학번의 오름차순으로 정렬하고 그중 첫번째 행 출
       력
    SELECT sid, sname FROM student
                        ORDER BY sid LIMIT 0, 1;




 한림대학교 금융정보통계
한림대학교 웹데이터베이스 - 이윤환              이   윤   환,
PHP와의 연동


MySQL을 이용한 데이터베이스 실습
MYSQL 과 연결
mysql_connect()
 • http://kr.php.net/manual/en/function.mysql-connect.php
 • resource mysql_connect (
         [ string $server = ini_get("mysql.default_host")
         [, string $username = ini_get("mysql.default_user")
         [, string $password = ini_get("mysql.default_password")
         [, bool $new_link = false
         [, int $client_flags = 0 ]]]]] )
       • $server : MySQL Server 명
       • $username : 접속할 MySQL 사용자명
       • $password : 접속할 사용자의 암호
mysql_close()
 • http://kr.php.net/manual/en/function.mysql-close.php
 • bool mysql_close ([ resource $link_identifier ] )
       • $link_identifier : 앞서 수립한 연결정보를 담고 있는 변수
Ex. mysql_connect.php

한림대학교 웹데이터베이스 - 이윤환
mysql_select_db()
 • http://kr.php.net/manual/en/function.mysql-select-db.php
 • bool mysql_select_db (
       string $database_name
       [, resource $link_identifier ] )
       • $database_name : 사용할 DB 명
       • $link_identifier : 연결 정보를 담고 있는 변수
 • Ex. mysql_select_db.php




한림대학교 웹데이터베이스 - 이윤환
쿼리 수행
mysql_query()
 • http://kr.php.net/manual/en/function.mysql-query.php
 • resource mysql_query (
       string $query [, resource $link_identifier ] )
       • $query : 수행할 SQL 문 혹은 MySQL 명령어
       • $link_identifier : 연결 정보를 담고 있는 변수
 • Ex.
    $result = mysql_query('SELECT mid, mname FROM major');
    if (!$result) {
        die('Could not query:' . mysql_error());
    }




한림대학교 웹데이터베이스 - 이윤환
쿼리 결과 처리 – 영향을 받은 행의 수
mysql_affected_rows
 • http://kr.php.net/manual/en/function.mysql-affected-rows.php
 • int mysql_affected_rows ([ resource $link_identifier ] )
        • $link_identifier : 연결 정보를 담고 있는 함수
 • Insert, update, delete의 결과로 영향을 받은 행의 수 반환
mysql_num_rows()
 • http://kr.php.net/manual/en/function.mysql-num-rows.php
 • int mysql_num_rows ( resource $result )
        • $result : mysql_query()를 통한 결과 집합
 • Select 문을 통해 선택된 행의 수 반환
Ex. mysql_counting.php



한림대학교 웹데이터베이스 - 이윤환
쿼리 결과 가져오기
mysql_result
 • http://kr.php.net/manual/en/function.mysql-result.php
 • string mysql_result ( resource $result ,
                 int $row
                 [, mixed $field = 0 ] )
        • $result : mysql_query의 결과 집합
        • $row : 가져올 행 선택 (0부터 시작)
        • $field : 가져올 열 순서(0부터 시작)
 • Ex. mysql_result.php
 • 별로 안 좋은 선택




한림대학교 웹데이터베이스 - 이윤환
쿼리 결과 가져오기
mysql_fetch_array
 • http://kr.php.net/manual/en/function.mysql-fetch-array.php
 • array mysql_fetch_array ( resource $result
                  [, int $result_type = MYSQL_BOTH ] )
        • $result : mysql_query의 결과 집합
        • $result_type
              • MYSQL_BOTH : 열의 결과를 열의 이름의 연관배열과 순서 인
                덱스 모두로 가져온다.
              • MYSQL_NUM : 열의 결과를 순서 인덱스로 가져온다.
              • MYSQL_ASSOC : 열의 결과를 열의 이름의 연관배열로 가져온
                다.
        • 한 번 수행할 때 결과 셋의 첫번째 행을 가져오고 그 다음 수행할 때
           다음 행을 가져온다.
        • 순환문과 함께 쓰인다
 • Ex. mysql_fetch_array.php


한림대학교 웹데이터베이스 - 이윤환

Weitere ähnliche Inhalte

Was ist angesagt?

현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)Ukjae Jeong
 
웹 개발 스터디 01 - MySQL
웹 개발 스터디 01 - MySQL웹 개발 스터디 01 - MySQL
웹 개발 스터디 01 - MySQLYu Yongwoo
 
Web vulnerability seminar4
Web vulnerability seminar4Web vulnerability seminar4
Web vulnerability seminar4Sakuya Izayoi
 
Web vulnerability seminar2
Web vulnerability seminar2Web vulnerability seminar2
Web vulnerability seminar2Sakuya Izayoi
 
웹 개발 스터디 01 - PHP, MySQL 연동
웹 개발 스터디 01 - PHP, MySQL 연동웹 개발 스터디 01 - PHP, MySQL 연동
웹 개발 스터디 01 - PHP, MySQL 연동Yu Yongwoo
 
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드Yu Yongwoo
 
MySQL delete.update
MySQL delete.updateMySQL delete.update
MySQL delete.updateHoyoung Jung
 
Web vulnerability seminar3
Web vulnerability seminar3Web vulnerability seminar3
Web vulnerability seminar3Sakuya Izayoi
 
12주차 간단한 방명록 제작 - 두번째
12주차 간단한 방명록 제작 - 두번째12주차 간단한 방명록 제작 - 두번째
12주차 간단한 방명록 제작 - 두번째Yoonwhan Lee
 
5-3. html5 device access
5-3. html5 device access5-3. html5 device access
5-3. html5 device accessJinKyoungHeo
 
Ksug2015 jpa5 스프링과jpa
Ksug2015 jpa5 스프링과jpaKsug2015 jpa5 스프링과jpa
Ksug2015 jpa5 스프링과jpaYounghan Kim
 
HTML Form과 배열
HTML Form과 배열HTML Form과 배열
HTML Form과 배열Yoonwhan Lee
 
웹 개발 스터디 01 - PHP
웹 개발 스터디 01 - PHP웹 개발 스터디 01 - PHP
웹 개발 스터디 01 - PHPYu Yongwoo
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기JangHyuk You
 
Jstl_GETCHA_HANJUNG
Jstl_GETCHA_HANJUNGJstl_GETCHA_HANJUNG
Jstl_GETCHA_HANJUNGJung Han
 
vine webdev
vine webdevvine webdev
vine webdevdcfc1997
 
자바야 놀자 PPT
자바야 놀자 PPT자바야 놀자 PPT
자바야 놀자 PPTJinKyoungHeo
 
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈jihoon kim
 

Was ist angesagt? (20)

현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 5차시 (설리번 프로젝트)
 
웹 개발 스터디 01 - MySQL
웹 개발 스터디 01 - MySQL웹 개발 스터디 01 - MySQL
웹 개발 스터디 01 - MySQL
 
Web vulnerability seminar4
Web vulnerability seminar4Web vulnerability seminar4
Web vulnerability seminar4
 
Web vulnerability seminar2
Web vulnerability seminar2Web vulnerability seminar2
Web vulnerability seminar2
 
MySQL JOIN
MySQL JOINMySQL JOIN
MySQL JOIN
 
웹 개발 스터디 01 - PHP, MySQL 연동
웹 개발 스터디 01 - PHP, MySQL 연동웹 개발 스터디 01 - PHP, MySQL 연동
웹 개발 스터디 01 - PHP, MySQL 연동
 
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
웹 개발 스터디 01 - PHP 파일 업로드, 다운로드
 
Hacosa j query 4th
Hacosa j query 4thHacosa j query 4th
Hacosa j query 4th
 
MySQL delete.update
MySQL delete.updateMySQL delete.update
MySQL delete.update
 
Web vulnerability seminar3
Web vulnerability seminar3Web vulnerability seminar3
Web vulnerability seminar3
 
12주차 간단한 방명록 제작 - 두번째
12주차 간단한 방명록 제작 - 두번째12주차 간단한 방명록 제작 - 두번째
12주차 간단한 방명록 제작 - 두번째
 
5-3. html5 device access
5-3. html5 device access5-3. html5 device access
5-3. html5 device access
 
Ksug2015 jpa5 스프링과jpa
Ksug2015 jpa5 스프링과jpaKsug2015 jpa5 스프링과jpa
Ksug2015 jpa5 스프링과jpa
 
HTML Form과 배열
HTML Form과 배열HTML Form과 배열
HTML Form과 배열
 
웹 개발 스터디 01 - PHP
웹 개발 스터디 01 - PHP웹 개발 스터디 01 - PHP
웹 개발 스터디 01 - PHP
 
Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기Mongo DB 완벽가이드 - 4장 쿼리하기
Mongo DB 완벽가이드 - 4장 쿼리하기
 
Jstl_GETCHA_HANJUNG
Jstl_GETCHA_HANJUNGJstl_GETCHA_HANJUNG
Jstl_GETCHA_HANJUNG
 
vine webdev
vine webdevvine webdev
vine webdev
 
자바야 놀자 PPT
자바야 놀자 PPT자바야 놀자 PPT
자바야 놀자 PPT
 
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈
제2회 한글형태소분석기 기술 세니마 발표(solr 활용 입문) by 김지훈
 

Andere mochten auch

PHP 함수와 제어구조
PHP 함수와 제어구조PHP 함수와 제어구조
PHP 함수와 제어구조Yoonwhan Lee
 
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Balena
 
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XpressEngine
 
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)Ukjae Jeong
 
trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?용현 정
 
Nodejs를 이용한 개발
Nodejs를 이용한 개발Nodejs를 이용한 개발
Nodejs를 이용한 개발WebFrameworks
 
읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다wonmin lee
 
깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기Ohgyun Ahn
 
Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스WebFrameworks
 
MariaDB Optimization
MariaDB OptimizationMariaDB Optimization
MariaDB OptimizationJongJin Lee
 
R 기초 : R Basics
R 기초 : R BasicsR 기초 : R Basics
R 기초 : R BasicsYoonwhan Lee
 
소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXTMinsuk Lee
 
임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기OnGameServer
 
개발자가 도전하는 MariaDB 서버구축
개발자가 도전하는 MariaDB 서버구축개발자가 도전하는 MariaDB 서버구축
개발자가 도전하는 MariaDB 서버구축정해 이
 

Andere mochten auch (20)

PHP 사용하기
PHP 사용하기PHP 사용하기
PHP 사용하기
 
php 시작하기
php 시작하기php 시작하기
php 시작하기
 
PHP 함수와 제어구조
PHP 함수와 제어구조PHP 함수와 제어구조
PHP 함수와 제어구조
 
PHP 기초 문법
PHP 기초 문법PHP 기초 문법
PHP 기초 문법
 
Resin.io
Resin.ioResin.io
Resin.io
 
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...Introducing resinOS: An Operating System Tailored for Containers and Built fo...
Introducing resinOS: An Operating System Tailored for Containers and Built fo...
 
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
XECon2015 :: [1-1] 안정수 - XE3 구조 및 기본기
 
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
현대고등학교 PHP 강의 - 1차시 (설리번 프로젝트)
 
trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?trello 사용법 및 좋은 팀대표란?
trello 사용법 및 좋은 팀대표란?
 
Nodejs를 이용한 개발
Nodejs를 이용한 개발Nodejs를 이용한 개발
Nodejs를 이용한 개발
 
읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다읽기 좋은 코드가 좋은코드다
읽기 좋은 코드가 좋은코드다
 
깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기깃헙으로 코드리뷰 하기
깃헙으로 코드리뷰 하기
 
Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스Meteor를 통해서 개발하는 웹어플리케이션 서비스
Meteor를 통해서 개발하는 웹어플리케이션 서비스
 
MariaDB Optimization
MariaDB OptimizationMariaDB Optimization
MariaDB Optimization
 
R 기초 : R Basics
R 기초 : R BasicsR 기초 : R Basics
R 기초 : R Basics
 
Trello
TrelloTrello
Trello
 
소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT소스리딩워크샵 - NHN NEXT
소스리딩워크샵 - NHN NEXT
 
임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기임영기님 - 코드 리뷰 시스템 도입하기
임영기님 - 코드 리뷰 시스템 도입하기
 
개발자가 도전하는 MariaDB 서버구축
개발자가 도전하는 MariaDB 서버구축개발자가 도전하는 MariaDB 서버구축
개발자가 도전하는 MariaDB 서버구축
 
Github 사용법
Github 사용법Github 사용법
Github 사용법
 

Ähnlich wie MySQL과 PHP

10주차 php 사용하기-iii
10주차 php 사용하기-iii10주차 php 사용하기-iii
10주차 php 사용하기-iiiYoonwhan Lee
 
성공적인웹프로그래밍
성공적인웹프로그래밍성공적인웹프로그래밍
성공적인웹프로그래밍dgmong
 
Apache solr소개 20120629
Apache solr소개 20120629Apache solr소개 20120629
Apache solr소개 20120629Dosang Yoon
 
R 스터디 두번째
R 스터디 두번째R 스터디 두번째
R 스터디 두번째Jaeseok Park
 
집단지성 프로그래밍 03-군집발견-03
집단지성 프로그래밍 03-군집발견-03집단지성 프로그래밍 03-군집발견-03
집단지성 프로그래밍 03-군집발견-03Kwang Woo NAM
 
My sql특징 정리
My sql특징 정리My sql특징 정리
My sql특징 정리parktaesoon
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작Terry Cho
 
03주차 ddl- table을 만들자
03주차 ddl- table을 만들자03주차 ddl- table을 만들자
03주차 ddl- table을 만들자Yoonwhan Lee
 
Laravel 로 배우는 서버사이드 #4
Laravel 로 배우는 서버사이드 #4Laravel 로 배우는 서버사이드 #4
Laravel 로 배우는 서버사이드 #4성일 한
 
Data Mining with R CH1 요약
Data Mining with R CH1 요약Data Mining with R CH1 요약
Data Mining with R CH1 요약Sung Yub Kim
 
R 에서의 서브쿼리
R 에서의 서브쿼리R 에서의 서브쿼리
R 에서의 서브쿼리yu yeon su
 
Fundamentals of Oracle SQL
Fundamentals of Oracle SQLFundamentals of Oracle SQL
Fundamentals of Oracle SQLJAEGEUN YU
 
R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1happychallenge
 
R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석simon park
 
03주차 ddl- table을 만들자
03주차 ddl- table을 만들자03주차 ddl- table을 만들자
03주차 ddl- table을 만들자Yoonwhan Lee
 
02주차 ddl- db를 만들자
02주차 ddl- db를 만들자02주차 ddl- db를 만들자
02주차 ddl- db를 만들자Yoonwhan Lee
 
04주차 ddl- table을 만들자-2
04주차 ddl- table을 만들자-204주차 ddl- table을 만들자-2
04주차 ddl- table을 만들자-2Yoonwhan Lee
 
제2장 데이터 조회하기
제2장 데이터 조회하기제2장 데이터 조회하기
제2장 데이터 조회하기sang doc Lee
 
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQLPgDay.Seoul
 

Ähnlich wie MySQL과 PHP (20)

10주차 php 사용하기-iii
10주차 php 사용하기-iii10주차 php 사용하기-iii
10주차 php 사용하기-iii
 
성공적인웹프로그래밍
성공적인웹프로그래밍성공적인웹프로그래밍
성공적인웹프로그래밍
 
Apache solr소개 20120629
Apache solr소개 20120629Apache solr소개 20120629
Apache solr소개 20120629
 
R 스터디 두번째
R 스터디 두번째R 스터디 두번째
R 스터디 두번째
 
집단지성 프로그래밍 03-군집발견-03
집단지성 프로그래밍 03-군집발견-03집단지성 프로그래밍 03-군집발견-03
집단지성 프로그래밍 03-군집발견-03
 
My sql특징 정리
My sql특징 정리My sql특징 정리
My sql특징 정리
 
R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작R 프로그래밍-향상된 데이타 조작
R 프로그래밍-향상된 데이타 조작
 
03주차 ddl- table을 만들자
03주차 ddl- table을 만들자03주차 ddl- table을 만들자
03주차 ddl- table을 만들자
 
Laravel 로 배우는 서버사이드 #4
Laravel 로 배우는 서버사이드 #4Laravel 로 배우는 서버사이드 #4
Laravel 로 배우는 서버사이드 #4
 
Data Mining with R CH1 요약
Data Mining with R CH1 요약Data Mining with R CH1 요약
Data Mining with R CH1 요약
 
R 에서의 서브쿼리
R 에서의 서브쿼리R 에서의 서브쿼리
R 에서의 서브쿼리
 
Fundamentals of Oracle SQL
Fundamentals of Oracle SQLFundamentals of Oracle SQL
Fundamentals of Oracle SQL
 
R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1R 프로그램의 이해와 활용 v1.1
R 프로그램의 이해와 활용 v1.1
 
R intro
R introR intro
R intro
 
R을 이용한 데이터 분석
R을 이용한 데이터 분석R을 이용한 데이터 분석
R을 이용한 데이터 분석
 
03주차 ddl- table을 만들자
03주차 ddl- table을 만들자03주차 ddl- table을 만들자
03주차 ddl- table을 만들자
 
02주차 ddl- db를 만들자
02주차 ddl- db를 만들자02주차 ddl- db를 만들자
02주차 ddl- db를 만들자
 
04주차 ddl- table을 만들자-2
04주차 ddl- table을 만들자-204주차 ddl- table을 만들자-2
04주차 ddl- table을 만들자-2
 
제2장 데이터 조회하기
제2장 데이터 조회하기제2장 데이터 조회하기
제2장 데이터 조회하기
 
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
[Pgday.Seoul 2021] 1. 예제로 살펴보는 포스트그레스큐엘의 독특한 SQL
 

Mehr von Yoonwhan Lee

03.기술통계 자료의 중심과 퍼진정도
03.기술통계 자료의 중심과 퍼진정도03.기술통계 자료의 중심과 퍼진정도
03.기술통계 자료의 중심과 퍼진정도Yoonwhan Lee
 
02.자료다루기
02.자료다루기02.자료다루기
02.자료다루기Yoonwhan Lee
 
13.상관과 회귀
13.상관과 회귀13.상관과 회귀
13.상관과 회귀Yoonwhan Lee
 
12.세표본 이상의 평균비교
12.세표본 이상의 평균비교12.세표본 이상의 평균비교
12.세표본 이상의 평균비교Yoonwhan Lee
 
11.두표본의 평균비교
11.두표본의 평균비교11.두표본의 평균비교
11.두표본의 평균비교Yoonwhan Lee
 
10.단일표본 평균 모비율
10.단일표본 평균 모비율10.단일표본 평균 모비율
10.단일표본 평균 모비율Yoonwhan Lee
 
09.통계적가설검정
09.통계적가설검정09.통계적가설검정
09.통계적가설검정Yoonwhan Lee
 
00.통계학입문
00.통계학입문00.통계학입문
00.통계학입문Yoonwhan Lee
 
14.범주형자료분석
14.범주형자료분석14.범주형자료분석
14.범주형자료분석Yoonwhan Lee
 
Smart work 자료 1
Smart work 자료 1Smart work 자료 1
Smart work 자료 1Yoonwhan Lee
 
통계자료 분석을 위한 R
통계자료 분석을 위한 R통계자료 분석을 위한 R
통계자료 분석을 위한 RYoonwhan Lee
 
통계자료분석을 ㅇ
통계자료분석을 ㅇ통계자료분석을 ㅇ
통계자료분석을 ㅇYoonwhan Lee
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정Yoonwhan Lee
 
에버노트와 드롭박스 설치
에버노트와 드롭박스 설치에버노트와 드롭박스 설치
에버노트와 드롭박스 설치Yoonwhan Lee
 

Mehr von Yoonwhan Lee (20)

03.기술통계 자료의 중심과 퍼진정도
03.기술통계 자료의 중심과 퍼진정도03.기술통계 자료의 중심과 퍼진정도
03.기술통계 자료의 중심과 퍼진정도
 
02.자료다루기
02.자료다루기02.자료다루기
02.자료다루기
 
01.r 기초
01.r 기초01.r 기초
01.r 기초
 
13.상관과 회귀
13.상관과 회귀13.상관과 회귀
13.상관과 회귀
 
12.세표본 이상의 평균비교
12.세표본 이상의 평균비교12.세표본 이상의 평균비교
12.세표본 이상의 평균비교
 
11.두표본의 평균비교
11.두표본의 평균비교11.두표본의 평균비교
11.두표본의 평균비교
 
10.단일표본 평균 모비율
10.단일표본 평균 모비율10.단일표본 평균 모비율
10.단일표본 평균 모비율
 
09.통계적가설검정
09.통계적가설검정09.통계적가설검정
09.통계적가설검정
 
08.추정
08.추정08.추정
08.추정
 
07.표본분포
07.표본분포07.표본분포
07.표본분포
 
06.확률분포
06.확률분포06.확률분포
06.확률분포
 
05.확률
05.확률05.확률
05.확률
 
00.통계학입문
00.통계학입문00.통계학입문
00.통계학입문
 
14.범주형자료분석
14.범주형자료분석14.범주형자료분석
14.범주형자료분석
 
Smart work 자료 1
Smart work 자료 1Smart work 자료 1
Smart work 자료 1
 
통계자료 분석을 위한 R
통계자료 분석을 위한 R통계자료 분석을 위한 R
통계자료 분석을 위한 R
 
통계자료분석을 ㅇ
통계자료분석을 ㅇ통계자료분석을 ㅇ
통계자료분석을 ㅇ
 
추정
추정추정
추정
 
쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정쿠키를 통해 구현해보는 간단한 로그인 과정
쿠키를 통해 구현해보는 간단한 로그인 과정
 
에버노트와 드롭박스 설치
에버노트와 드롭박스 설치에버노트와 드롭박스 설치
에버노트와 드롭박스 설치
 

MySQL과 PHP

  • 2. 자료 관리 MySQL을 이용한 데이터베이스 실습
  • 3. INSERT : 자료의 입력- PART I 만들어져 있는 Table에 자료를 저장한다. http://dev.mysql.com/doc/refman/5.1/en/insert.html • 위 링크의 기본 형을 바탕으로 새롭게 다음과 같은 형태를 추천한다. INSERT INTO tbl_name [(col_name, … )] VALUES (value, …), … , (value); 자료 입력 > INSERT INTO major (mid, mname) VALUES (1, '통계학과'); > INSERT INTO major (mname) VALUES ('수학과‘); > INSERT INTO dept_tab VALUES +> (3, '컴퓨터공학과'), +> (4, '전자공학과'); > SET CHARATER SET euckr; 한림대학교 웹데이터베이스 - 이윤환
  • 4. UPDATE : 자료의 변경 기존 데이터의 행을 선택해서 특정 열의 값 변경 • 조건절이 없으면 전체 테이블의 지정한 열의 값을 하나로 변경한다. 행의 선택 (WHERE 문) • DB는 기본적으로 행단위로 데이터를 다룬다. • WHERE는 특정 조건을 주어 해당 조건에 맞는 행을 선택하도록 한다. • 조건들은 AND와 OR 에 의해 결합된다. http://dev.mysql.com/doc/refman/5.1/en/update.html 을 바탕으로 다음과 같이 사용한다. UPDATE tbl_name SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ... [WHERE where_condition] [ORDER BY ...] [LIMIT row_count] 한림대학교 웹데이터베이스 - 이윤환
  • 5. UPDATE : 자료의 변경 예제 • 학생정보에서 학과 코드 3을 2로 잘못 입력하여 변경 • student 에서 smajor가 2인 행을 찾아 3으로 변경 > UPDATE student SET smajor = 3 WHERE smajor = 2; • 컴퓨터 공학과의 이름이 둘리인 학생이 이름을 희동이로 개명하여 바꾸고자 한다. • 둘리가 이름인 학생이 여러명 있을 수 있으므로 학과 코드가 3이고 이름이 둘리인 학생의 이름을 희동이로 변경한다. > UPDATE student SET sname = '희동이' +> WHERE sname = '둘리' AND smajor = 3 한림대학교 웹데이터베이스 - 이윤환
  • 6. DELETE : 자료 삭제 조건에 맞는(WHERE) 행을 선택하고 삭제 http://dev.mysql.com/doc/refman/5.1/en/delete.html 을 바탕으로 다 음과 같이 사용한다. DELETE FROM tbl_name [WHERE where_condition] [ORDER BY ...] [LIMIT row_count] 예제 • 학번이 20121001번인 학생의 데이터를 삭제하라. > DELETE FROM student WHERE sid = ‘20121001’; • WHERE 이후가 생략되면 해당 테이블의 전체 데이터 삭제 > DELETE FROM student_tab; 한림대학교 웹데이터베이스 - 이윤환
  • 7. SELECT : 자료 검색 실제 DB에서 가장 많이 사용되는 기능 조건에 부합(WHERE) 하는 행을 선택하여 보여준다. http://dev.mysql.com/doc/refman/5.1/en/select.html SELECT select_expr [, select_expr ...] [FROM table_references [WHERE where_condition] [GROUP BY {col_name | expr | position} [ASC | DESC], ... [WITH ROLLUP]] [HAVING where_condition] [ORDER BY {col_name | expr | position} [ASC | DESC], ...] [LIMIT {[offset,] row_count | row_count OFFSET offset}] 한림대학교 웹데이터베이스 - 이윤환
  • 8. SELECT : 자료 검색 예제 • 원활한 실습을 위해 다음 입력 INSERT INTO student VALUES (NULL, '20121001', '고길동', 51, ‘M’, 1), (NULL, '20121002', '둘리', 25, ‘M’, 2), (NULL, '20121003', '희동이', 5, ‘M’, 1), (NULL, '20121004', '도우너', 24, ‘M’, 3), (NULL, '20121005', '또치', 28, ‘M’, 4), (NULL, '20121006', '마이콜', 41, ‘M’, 1), (NULL, '20121007', '철수', 10, ‘M’, 3), (NULL, '20121008', '영희', 11, ‘F’, 2); 한림대학교 웹데이터베이스 - 이윤환
  • 9. SELECT : 자료 검색 • 학과 코드 1번에 해당하는 학생 검색 SELECT * FROM student WHERE smajor = 1; • 학과 코드 1번에 해당하는 학생들의 학번과 이름 검색 SELECT sid, same FROM student WHERE smajor = 1; • 학과별 학생수검색 • count(열이름) : 열의 숫자 반환; SELECT smajor, count(smajor) as '명' FROM student GROUP BY smajor; • 학과 코드가 1인 학과를 제외한 학과별 학생수 검색 SELECT smajor, count(smajor) as '명' FROM student GROUP BY smajor HAVING smajor <> 1; 한림대학교 웹데이터베이스 - 이윤환
  • 10. SELECT : 자료 검색 • 과목코드 순으로 학번과 학생 이름 출력 (동일 학과 내에 서는 학번의 역순) SELECT smajor, sid, same FROM student ORDER BY smajor ASC, sid DESC; • 학번이 가장 빠른 학생의 학번과 이름 출력 • 학번의 오름차순으로 정렬하고 그중 첫번째 행 출 력 SELECT sid, sname FROM student ORDER BY sid LIMIT 0, 1; 한림대학교 금융정보통계 한림대학교 웹데이터베이스 - 이윤환 이 윤 환,
  • 11. PHP와의 연동 MySQL을 이용한 데이터베이스 실습
  • 12. MYSQL 과 연결 mysql_connect() • http://kr.php.net/manual/en/function.mysql-connect.php • resource mysql_connect ( [ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] ) • $server : MySQL Server 명 • $username : 접속할 MySQL 사용자명 • $password : 접속할 사용자의 암호 mysql_close() • http://kr.php.net/manual/en/function.mysql-close.php • bool mysql_close ([ resource $link_identifier ] ) • $link_identifier : 앞서 수립한 연결정보를 담고 있는 변수 Ex. mysql_connect.php 한림대학교 웹데이터베이스 - 이윤환
  • 13. mysql_select_db() • http://kr.php.net/manual/en/function.mysql-select-db.php • bool mysql_select_db ( string $database_name [, resource $link_identifier ] ) • $database_name : 사용할 DB 명 • $link_identifier : 연결 정보를 담고 있는 변수 • Ex. mysql_select_db.php 한림대학교 웹데이터베이스 - 이윤환
  • 14. 쿼리 수행 mysql_query() • http://kr.php.net/manual/en/function.mysql-query.php • resource mysql_query ( string $query [, resource $link_identifier ] ) • $query : 수행할 SQL 문 혹은 MySQL 명령어 • $link_identifier : 연결 정보를 담고 있는 변수 • Ex. $result = mysql_query('SELECT mid, mname FROM major'); if (!$result) { die('Could not query:' . mysql_error()); } 한림대학교 웹데이터베이스 - 이윤환
  • 15. 쿼리 결과 처리 – 영향을 받은 행의 수 mysql_affected_rows • http://kr.php.net/manual/en/function.mysql-affected-rows.php • int mysql_affected_rows ([ resource $link_identifier ] ) • $link_identifier : 연결 정보를 담고 있는 함수 • Insert, update, delete의 결과로 영향을 받은 행의 수 반환 mysql_num_rows() • http://kr.php.net/manual/en/function.mysql-num-rows.php • int mysql_num_rows ( resource $result ) • $result : mysql_query()를 통한 결과 집합 • Select 문을 통해 선택된 행의 수 반환 Ex. mysql_counting.php 한림대학교 웹데이터베이스 - 이윤환
  • 16. 쿼리 결과 가져오기 mysql_result • http://kr.php.net/manual/en/function.mysql-result.php • string mysql_result ( resource $result , int $row [, mixed $field = 0 ] ) • $result : mysql_query의 결과 집합 • $row : 가져올 행 선택 (0부터 시작) • $field : 가져올 열 순서(0부터 시작) • Ex. mysql_result.php • 별로 안 좋은 선택 한림대학교 웹데이터베이스 - 이윤환
  • 17. 쿼리 결과 가져오기 mysql_fetch_array • http://kr.php.net/manual/en/function.mysql-fetch-array.php • array mysql_fetch_array ( resource $result [, int $result_type = MYSQL_BOTH ] ) • $result : mysql_query의 결과 집합 • $result_type • MYSQL_BOTH : 열의 결과를 열의 이름의 연관배열과 순서 인 덱스 모두로 가져온다. • MYSQL_NUM : 열의 결과를 순서 인덱스로 가져온다. • MYSQL_ASSOC : 열의 결과를 열의 이름의 연관배열로 가져온 다. • 한 번 수행할 때 결과 셋의 첫번째 행을 가져오고 그 다음 수행할 때 다음 행을 가져온다. • 순환문과 함께 쓰인다 • Ex. mysql_fetch_array.php 한림대학교 웹데이터베이스 - 이윤환