PHP Mysqli 함수(사용빈도 높은것만..^^) 

 

▣ MySQLi 함수

 

   - MySQLi 는 MySQL Improved Extension 의 약자로 기존 MySQL 함수의 확장된 함수이다.

 

     MySQLi 함수는 기존의 함수 방식과 객체 방식 두 가지 형태로 사용할 수 있지만 PHP 5 이상에서만

 

     사용할 수 있기 때문에 호환성 문제가 있다면 MySQL 함수를 사용하도록 한다.

 


 

 

⊙ mysqli_connect()

 

resource mysqli_connect([string host], [string username], [string password],

                                [string dbname], [int port], [string socket])

 

   - host : MySQL 서버 주소

   - username : 데이터베이스 사용자 계정

   - password : 데이터베이스 사용자 비밀번호

   - dbname : 선택할 데이터베이스 이름

   - port : MySQL 서버 포트 번호

   - socket : 소켓 또는 명명된 파이프

 

=> 데이터베이스에 접속한다.

 

=> 데이터베이스에 접속하고 연결이 되면 MySQL 연결 정보를 객체로 되돌려준다.

  

 

⊙ mysql_close()

 

bool mysqli_close(mysqli link)

 

   - link : MySQL 연결 객체

 

=> 데이터베이스의 접속을 종료한다.

  

 

 

⊙ mysqli_select_db()

 

bool mysqli_select_db(mysqli link, string dbname)

 

   - link : MySQL 연결 객체

   - dbname : 선택할 데이터베이스 이름

 

=> 사용할 데이터 베이스를 선택한다. mysqli_connect() 함수 자체에 데이터베이스를 선택하는 옵션이 있기에

 

    실제로는 데이터베이스를 중간에 변경할때 사용한다.

  

 

 

⊙ mysqli_real_query()

 

bool mysqli_real_query(mysql link, string query)

 

   - link : MySQL 연결 객체

   - query : 쿼리

 

=> 데이터베이스에 쿼리를 전송한다.

 

=> 쿼리 결과를 얻으려면 mysqli_use_result() 나 mysql_store_result() 함수를 사용해야 한다.

  

 

 

⊙ mysqli_store_result()

 

mysqli_result mysqli_store_result(mysqli link)

 

   - link : MySQL 연결 객체

 

=> 마지막 쿼리의 결과 레코드를 전송한다.

 

=> insert 와 같은 쿼리는 FALSE를 반환하고, 결과 레코드를 읽어오지 못한 때에도 FALSE를 반환

  

 

 

⊙ mysqli_use_result()

 

mysqli_result mysqli_use_result(mysqli link)

 

   - link : MySQL 연결 객체

 

=> 마지막에 수행된 쿼리의 결과 레코드를 조회한다.

 

=> mysqli_use_result() 혹은 mysqli_store_result() 중 하나는 쿼리의 결과를 취득하기 전에 반드시

 

   호출되어야한다. 그렇지 않으면 다른 쿼리를 전송할 수 없다.

  

 

 

⊙ mysqli_query()

 

mixed mysqli_query(mysqli link, string query, [int resultmode])

 

   - link : MySQL 연결 객체

   - query : 쿼리

   - resultmode : mysqli_use_result / mysqli_store_result

 

=> mysqli_real_query() 함수를 호출한 후 mysqli_use_result() / mysqli_store_result() 함수를 호출한것과 같다.

 

=> resultmode의 디폴트 값은 mysqli_store_result 이다.

  

 

 

⊙ mysqli_multi_query

 

bool mysql_multi_query(mysql link, string query)

 

   - link : MySQL 연결 객체

   - query : 쿼리

 

=> 데이터베이스에 하나 이상의 쿼리를 전송한다.

 

=> MySQLi 클래스에서 새롭게 지원하는 함수로 여러 개의 쿼리를 한 번에 전송하는 기능을 한다.

 

=> 쿼리의 결과 레코드를 얻으려면 mysqli_use_result() 함수나 mysql_store_result() 함수를 사용해야 한다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

  

 

 

⊙ mysqli_next_result()

 

bool mysqli_next_result(mysqli link)

 

   - link : MySQL 연결 객체

 

=> mysqli_multi_query() 함수에 의해서 실행된 결과의 다음 레코드를 가져올 수 있도록 준비한다.

 

  

 

⊙ mysqli_more_result()

 

bool mysqli_more_result(mysqli link)

 

   - link : MySQL 연결 객체

 

=> mysqli_multi_query() 함수에 의한 결과 레코드가 더 남아있는지 확인한다.

 

=> 결과가 남아있다면 TRUE, 남아있지 않다면 FALSE 를 반환한다.

 

 

 

⊙ mysqli_fetch_array()

 

mixed mysqli_fetch_array(mysqli_result result, [int resulttype])

 

   - result : MySQLi 결과 객체

   - resulttype : MYSQLI_ASSOC, MYSQLI_NUM, MYSQLI_BOTH

 

=> mysqli_query(), mysqli_use_result(), mysqli_store_result() 함수의 결과인 mysqli_result 객체를 입력받아

 

    결과 레코드를 배열로 반환한다.

 

=> mysql_fetch_array() 함수와 동일하다.

 

=> mysqli_fetch_row(), mysqli_fetch_assoc() 함수도 역시 확장 전의 mysql 함수들과 같다.

  

 

 

⊙ mysqli_free_result()

 

void mysqli_free_result(mysqli_result result)

 

   - result : MySQLi 결과 객체

 

=> 쿼리 결과를 메모리에서 해제한다.

 

 

 


 

▣ 트랜잭션의 개념

 

   - 트랜잭션이란, 일련의 작업 과정을 하나로 묶은 더 큰 단위이다.

 

     예를들어 설명하면, 현금인출기의 동작을 세 가지로 요약해 보겠다.

 

     1. 계좌의 잔고를 확인한다.

 

     2. 계좌에서 인출금액을 감액한다.

 

     3. 인출금액을 내보낸다.

 

     이러한 과정에서 만약 2번까지 수행하고 에러가 발생한다면 고객은 잔고는 깎였는데 돈은 받지 못하는

 

     상황이 생길 수 있다. 이때 위의 3가지 과정을 하나의 트랜잭션으로 묶어서 처리하게 된다.

 

     2번 이후에 에러가 발생한다면 1,2번 과정을 모두 취소하게 되는데 이를 Rollback 이라 한다.

 

     모든 과정이 정상적으로 처리되었을때 확정을 하여 시스템에 적용하는데 이를 Commit 이라 한다.

 


 

 

 

  

 

⊙ mysqli_autocommit

 

bool mysqli_autocommitbmysqli link, bool mode)

 

   - link : MySQLi 결과 객체

   - mode : 자동 커밋의 경우 TRUE

 

=> 함수를 자동으로 커밋을 실행할지 결정하는 함수 (commit : 트랜잭션이 종료되었음을 데이터베이스에 알려줌)

  

 

 

⊙ mysqli_commit

 

bool mysqli_commit(mysqli link)

 

   - link : MySQLi 결과 객체

 

=> 현재의 트랜잭션을 커밋한다.

 

=> 커밋을 하면 수행한 트랜잭션이 실제 데이터베이스에 적용되므로 취소할 수 없다.

  

 

 

⊙ mysqli_rollback

 

bool mysqli_rollback(mysqli link)

 

   - link : MySQLi 결과 객체

 

=> 현재의 트랜잭션을 롤백한다.

 

=> 트랜잭션 중에서 수행하던 작업들을 모두 원상태로 되돌림.

 

 

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
109 내가 본 워드프레스 핵심 구조 및 기능 (Wordpress Architecture and Function) file 졸리운_곰 2020.02.20 34
108 [php machine learing] 회귀 분석 phpml 졸리운_곰 2020.02.06 89
107 [php machine learning] PHP-ML을 이용한 분류 졸리운_곰 2020.02.06 153
106 PHP-CRUD-API [mysql 및 데이터베이스 자동 미들웨어(middleware) by php] file 졸리운_곰 2020.01.25 41
105 Docker를 이용하여 멀티플랫폼에서 MSSQL + Laravel을 개발해보자. file 졸리운_곰 2020.01.23 140
104 PHP 기반의 Micro Frameworks 정리 졸리운_곰 2019.11.19 41
103 Micro-Framework, Lumen 살펴보기 file 졸리운_곰 2019.11.19 20
102 라라벨-루멘-PHP 날코딩 성능 비교 file 졸리운_곰 2019.11.19 113
101 Using WordPress with Lumen 졸리운_곰 2019.11.06 125
100 Micro-Framework, Lumen 살펴보기 file 졸리운_곰 2019.11.05 67
99 PHP 로 guid(uuid) 만들기 졸리운_곰 2019.02.27 716
98 PHP 리다이렉션(페이지 이동)의 3가지 방법 졸리운_곰 2019.01.11 94
97 mysql_ 함수에서 mysqli_ 함수로 변환 : How to Convert MySQL to MySQLi file 졸리운_곰 2019.01.05 70
96 PHP 의존성 관리도구 – Composer 시작하기 졸리운_곰 2018.12.28 47
» PHP Mysqli 함수(사용빈도 높은것만..^^) 졸리운_곰 2018.12.25 96
94 Java 개발자로서 PHP 최단 시간에 공부하기 졸리운_곰 2018.11.21 64
93 Learn Blockchain In PHP 졸리운_곰 2018.11.18 89
92 MySQLConverterTool : How to Convert MySQL to MySQLi file 졸리운_곰 2018.11.16 52
91 How to Convert MySQL to MySQLi file 졸리운_곰 2018.11.16 50
90 php game programming ebook 2004 : php 게임 프로그래밍 file 졸리운_곰 2018.10.15 48
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED