>백엔드 개발 >PHP 튜토리얼 >Mac 환경에서 PHP로 mysql 데이터베이스를 작동하는 방법 공유_php 팁

Mac 환경에서 PHP로 mysql 데이터베이스를 작동하는 방법 공유_php 팁

WBOY
WBOY원래의
2016-05-16 20:16:071183검색

Mac 로컬 환경 설정

Mac 시스템에서는 MAMP Pro 소프트웨어를 사용하여 로컬 서버를 구축할 수 있습니다. 이 소프트웨어를 설치한 후 웹사이트의 디렉터리는 /Applications/MAMP/htdocs 폴더에 있습니다. 해당 폴더에 파일을 넣으면 http://localhost:8888을 통해 또는 빠르게 액세스할 수 있습니다. 아래 빨간색 밑줄 친 버튼을 클릭하여 사이트에 접속하세요.

Mac 시스템에서 PHP를 설치하려면 두 줄만 있으면 됩니다.

brew tap josegonzalez/homebrew-php
brew install php54

설치 및 구성 후에는 phpstorm을 사용하여 즐겁게 프로그래밍할 수 있습니다. 설치된 PHP 경로는 /usr/local/bin/php

기본 데이터베이스 운영

1) 사용자의 웹 브라우저는 특정 웹 페이지를 요청하기 위해 HTTP 요청을 발행합니다.
2) 웹 서버는 파일을 얻기 위해 .php 요청을 수신하고 이를 PHP 엔진에 전달하여 처리를 요청합니다. 3) PHP 엔진이 스크립트 구문 분석을 시작합니다. 스크립트에는 데이터베이스에 연결하는 명령과 쿼리를 실행하는 명령이 포함되어 있습니다. 인생
PHP는 MYSQL 데이터베이스에 대한 연결을 열고 적절한 쿼리를 보냅니다.
4) MYSQL 서버는 데이터베이스 쿼리를 수신하여 처리합니다. PHP 엔진에 결과를 반환합니다.
5) PHP는 사용자가 진행하는 대로 스크립트를 실행합니다. 일반적으로 여기에는 쿼리 결과를 HTML 형식으로 형식화하는 작업이 포함됩니다. 란
그런 다음 HTML을 다시 웹 서버로 출력합니다.
6) 웹 서버는 HTML을 브라우저로 보냅니다.
MySQL 공통 데이터 유형

정수 유형: TINYINT, SMALLINT, INT, BIGINT
부동 소수점 유형: FLOA T, DOUB LE, DECIMAL(M, D)
문자 유형: CHAR, VARCHAR
날짜 유형: DA TETIME, DA TE, TIMESTA MP
비고 유형:TINYTEXT,TEXT,LONGTEXT
MySQL 데이터베이스 작업

1) 현재 존재하는 데이터베이스를 표시합니다
>쇼데이터베이스
2) 필요한 데이터베이스를 선택하세요
>USE손님
3) 현재 선택된 데이터베이스 보기
>SELECTDATABASE()
4) 테이블의 모든 내용 보기
>SELECT*FROMguest; //SHOWTABLES를 통해 먼저 테이블 수를 확인할 수 있습니다.
5) 데이터베이스에 따라 중국어 인코딩 설정
>SET NAMESgbk; //이름 설정 utf8; 6) 데이터베이스 생성
>CREATEDATABASE책
7) 데이터베이스에 테이블을 생성합니다
>CREATETABLE사용자(
>username VARCHAR(20),//NOT NULL 설정은 비워둘 수 없습니다
>성별 CHAR(1),
>생년월일(DATETIME);
8) 테이블의 구조를 표시합니다
>DESCIRBE사용자;

9) 테이블에 데이터 조각 삽입

 

>INSERT INTO users (username,sex,birth) VALUES('jack','male',NOW());
PHP가 MySQL 데이터베이스에 연결

데이터베이스에 연결

<&#63;php
  header('COntent-Type:text/html;charset=utf-8');//设置页面编码,如果文件是gbk编码,则charset也应用gbk
  //@表示如果出错了,不要报错,直接忽略
  //参数:服务器地址,用户名和密码

  echo (!!@mysql_connect('localhost','root','*****'));//1
&#63;> 

리소스 핸들을 불리언 값으로 변환하기 위해 이중 느낌표를 사용하고, 맞으면 1을 출력하고, 틀리면 오류 메시지를 출력합니다. @ 기호가 앞에 추가되면 오류 메시지가 무시되고 오류 메시지가 출력되지 않습니다.

오류 메시지 처리를 위해 mysql_error() 함수를 사용하여 오류 메시지를 출력할 수 있습니다.

mysql_connect('localhost','root','****') 또는 die('데이터베이스 연결 실패, 오류 메시지: '.mysql_error()) // 잘못된 비밀번호에 대한 팁: 데이터베이스 연결 실패, 오류 메시지: 사용자

'root'@'localhost'에 대한 액세스가 거부되었습니다(비밀번호 사용: YES) die() 함수는 메시지를 출력하고 현재 스크립트를 종료합니다. 이 함수는 exit() 함수의 별칭입니다.

데이터베이스 연결 매개변수는 상수로 저장될 수 있으므로 마음대로 수정할 수 없으며 더 안전합니다.

<meta charset="utf-8">
<&#63;php
  //定义常量参数
  define('DB_HOST','localhost');
  define('DB_USER','root');
  define('DB_PWD','345823');//密码
  $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败,错误信息:'.mysql_error());
  echo $connect;//Resource id #2 
&#63;> 
mysql_connect()의 괄호 안에 있는 상수는 인용할 수 없으며 그렇지 않으면 오류가 발생한다는 점에 유의할 가치가 있습니다.

지정된 데이터베이스 선택

<&#63;php
  define('DB_HOST','localhost');
  define('DB_USER','root');
  define('DB_PWD','345823');//密码
  define('DB_NAME','trigkit');//在phpmyadmin创建一个名为trigkit的数据库
  //连接数据库
  $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败,错误信息:'.mysql_error());
  //选择指定数据库
  mysql_select_db(DB_NAME,$connect) or die('数据库连接错误,错误信息:'.mysql_error());//将表名字故意写错,提示的错误信息:数据库连接错误,错误信息:Unknown database 'trigkt'
&#63;> 
일반적으로 열려 있는 비영구 연결은 스크립트가 실행된 후 자동으로 닫히므로 mysql_close()를 사용할 필요가 없습니다.

mysql_select_db(database,connection): MySQL 데이터베이스 선택

기록 세트 가져오기

<meta charset="utf-8">
<&#63;php
  define('DB_HOST','localhost');
  define('DB_USER','root');
  define('DB_PWD','345823');//密码
  define('DB_NAME','trigkit');
  //连接数据库
  $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败,错误信息:'.mysql_error());
  //选择指定数据库
  mysql_select_db(DB_NAME,$connect) or die('数据表连接错误,错误信息:'.mysql_error());
  //从数据库里把表的数据提出来(获取记录集)
  $query = "SELECT * FROM class";//在trigkit数据库中新建一张'表'
  $result = mysql_query($query) or die('SQL错误,错误信息:'.mysql_error());//故意将表名写错:SQL错误,错误信息:Table 'trigkit.clas' doesn't exist
&#63;> 
mysql_query() 함수는 MySQL 쿼리를 실행합니다.

출력 데이터

<meta charset="utf-8">
<&#63;php
  define('DB_HOST','localhost');
  define('DB_USER','root');
  define('DB_PWD','345823');//密码
  define('DB_NAME','trigkit');
  //连接数据库
  $connect = mysql_connect(DB_HOST,DB_USER,DB_PWD) or die('数据库连接失败,错误信息:'.mysql_error());
  //选择指定数据库,设置字符集
  mysql_select_db(DB_NAME,$connect) or die('数据表连接错误,错误信息:'.mysql_error());
  mysql_query('SET NAMES UTF8') or die('字符集设置出错'.mysql_error());
  //从数据库里把表的数据提出来(获取记录集)
  $query = "SELECT * FROM class";
  $result = mysql_query($query) or die('SQL错误,错误信息:'.mysql_error());
  print_r(mysql_fetch_array($result,MYSQL_ASSOC));
&#63;> 
결과 세트 리소스 해제(대량 결과 세트를 반환할 때 메모리 사용량을 고려할 때만 호출하면 됩니다.)

<&#63;php
  mysql_free_result($result); 
&#63;>

추가, 삭제, 수정 및 확인

새로운 데이터

<&#63;php
  require 'index.php';
  //新增数据
  $query = "INSERT INTO CLASS(
       name,
       email,
       point,
       regdate)
    VALUES (
    '小明',
    'xiaoming@163.com',
    100,
    NOW()
    )";

  @mysql_query($query) or die('新增错误:'.mysql_error());

&#63;>

我们将上面的代码保存为index.php,丢进/Applications/MAMP/htdocs/ 文件夹。将上面的代码保存为demo.php,放进同样的目录内。Mac系统获取文件的路径很简单,只需将文件拉进终端即可显示路径名。

修改数据

我们假设要修改的数据的名称是小明,id为2,将他的point分数修改为80分,代码如下:

<&#63;php
  require 'index.php';

  //修改数据
  $query = 'UPDATE class SET point=80 WHERE id=2';
  @mysql_query($query);
&#63;>

删除数据

<&#63;php
  require 'index.php';

  //删除数据
  $query = "DELETE FROM class WHERE id=2";
  @mysql_query($query);

  mysql_close();
&#63;>

显示数据

<&#63;php
  require 'index.php';

  //显示数据
  $query = "SELECT id,name,email,regdate FROM class";
  $result = mysql_query($query) or die('sql语句错误:'.mysql_error());

  print_r(mysql_fetch_array($result));
  mysql_close();
&#63;>

或者显示指定值数据:

$data = mysql_fetch_array($result);
echo $data['email'];//显示email
echo $data['name'];//显示name

其他常用函数

复制代码 代码如下:

mysql_fetch_lengths(): 取得结果集中每个输出的长度
mysql_field_name(): 取得结果中指定字段的字段名

mysql _fetch_row():从结果集中取得一行作为枚举数组
mysql_fetch_assoc(): 从结果集中取得一行作为关联数组
mysql_fetch_array(): 从结果集中取得一行作为关联数组,或数字数组,或二者兼有

mysql_num_rows(): 取得结果集中行的数目
mysql_num_fields():取得结果集中字段的数目

mysql_get_client_info(): 取得 MySQL 客户端信息
mysql_get_host_info(): 取得 MySQL 主机信息
mysql_get_proto_info(): 取得 MySQL 协议信息
mysql_get_server_info(): 取得 MySQL 服务器信息


以上所述就是本文的全部内容了,希望大家能够喜欢。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.