学习要点:
1.PHP 连接到MySQL
2.增删改查
3.其他常用函数

  如果你已经具有了使用PHP、SQL 和MySQL 的丰富经验,现在就可以把所有这些技术
组合在一起。PHP 与MySQL 之间稳固的集成只是众多程序员采纳它的一个原因,还有一个
原因就是,它如此的简单方便。

一.PHP连接到MySQL

这里,我们全面采用UTF-8 编码。
设置Zend Stduio 的编码:Window -> Preferences -> Workspace

标头设置,让火狐和IE 保持编码统一:

<?php
header('Content-Type:text/html; charset=utf-8');
?>

连接MySQL

<?php
$conn = @mysql_connect(DB_HOST,DB_USER,DB_PASSWORD) or
die('数据库连接失败!错误信息:'.mysql_error());
?>

数据库连接参数,可以用常量存储,这样就不能修改,更加安全。

<?php
define('DB_USER','root');
define('DB_PASSWORD','yangfan');
define('DB_HOST','localhost');
define('DB_NAME' ,'school');
?>

选择你所需要的数据库

<?php
@mysql_select_db(DB_NAME) or die('数据库找不到!错误信息:'.mysql_error());
?>

设置字符集,如果是GBK,直接设置SET NAMES GBK 即可

<?php
@mysql_query('SET NAMES UTF8') or die('字符集设置错误');
?>

获取记录集

<?php
$query = "SELECT * FROM grade";
$result = @mysql_query($query) or die('SQL 语句有误!错误信息:
'.mysql_error());
?>

输出一条记录

<?php
print_r(mysql_fetch_array($result,MYSQL_ASSOC));
?>

释放结果集资源

<?php
mysql_free_result($result);
?>

关闭数据库

<?php
mysql_close($conn);
?>

二.增删改查

新增数据

<?php
$query = "INSERT INTO grade (name,email,point,regdate) VALUE
('李炎恢','yc60.com@gmail.com',,NOW())";
@mysql_query($query) or die('添加数据出错:'.mysql_error());
?>

修改数据

<?php
$query = "UPDATE grade SET name='小可爱' WHERE id=6";
@mysql_query($query) or die('修改出错:'.mysql_error());
?>

删除数据

<?php
$query = "DELETE FROM grade WHERE id=6";
@mysql_query($query) or die('删除错误:'.mysql_error());
?>

显示数据

<?php
$query = "SELECT id,name,email,point FROM grade";
$result = @mysql_query($query) or die('查询语句出错:'.mysql_error());
while (!!$row = mysql_fetch_array($result)) {
echo $row['id'].'----'.$row['name'].'----'.$row['email'].'----'.$row['point'];
echo '<br />';
}
?>

三.其他常用函数

mysql_fetch_row():从结果集中取得一行作为枚举数组
mysql_fetch_assoc(): 从结果集中取得一行作为关联数组
mysql_fetch_array(): 从结果集中取得一行作为关联数组,或数字数组,或二者兼有
mysql_fetch_lengths (): 取得结果集中每个输出的长度
mysql_field_name(): 取得结果中指定字段的字段名
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 服务器信息

 注:文章出自李炎恢PHP视频教程,本文仅限交流使用,不得用于商业用途,否则后果自负。

第十六章 PHP 操作MySQL的更多相关文章

  1. python学习笔记-(十六)python操作mysql

    一. mysql安装 1. windows下安装mysql 1.1. 下载源: http://dev.mysql.com/downloads/installer/,请认准对应版本 Windows (x ...

  2. 进击的Python【第十二章】:mysql介绍与简单操作,sqlachemy介绍与简单应用

    进击的Python[第十二章]:mysql介绍与简单操作,sqlachemy介绍与简单应用 一.数据库介绍 什么是数据库? 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,每个数 ...

  3. Gradle 1.12用户指南翻译——第三十六章. Sonar Runner 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  4. Gradle 1.12 翻译——第十六章. 使用文件

    有关其它已翻译的章节请关注Github上的项目:https://github.com/msdx/gradledoc/tree/1.12,或訪问:http://gradledoc.qiniudn.com ...

  5. 第十六章——处理锁、阻塞和死锁(3)——使用SQLServer Profiler侦测死锁

    原文:第十六章--处理锁.阻塞和死锁(3)--使用SQLServer Profiler侦测死锁 前言: 作为DBA,可能经常会遇到有同事或者客户反映经常发生死锁,影响了系统的使用.此时,你需要尽快侦测 ...

  6. 读《构建之法》一、二、十六章随笔a

    第一章    概论 “软件团队要从需求分析开始,把合适的需求梳理出来,然后逐步开展后续工作”:——p3 问题:好的用户体验要从软件分析开始,那么软件分析仅仅是从用户的需求出发吗? 我的看法:需求分析是 ...

  7. SpringBoot | 第二十六章:邮件发送

    前言 讲解了日志相关的知识点后.今天来点相对简单的,一般上,我们在开发一些注册功能.发送验证码或者订单服务时,都会通过短信或者邮件的方式通知消费者,注册或者订单的相关信息.而且基本上邮件的内容都是模版 ...

  8. 进击的Python【第十六章】:Web前端基础之jQuery

    进击的Python[第十六章]:Web前端基础之jQuery 一.什么是 jQuery ? jQuery是一个JavaScript函数库. jQuery是一个轻量级的"写的少,做的多&quo ...

  9. Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十六章:实例化和截头锥体裁切

    原文:Introduction to 3D Game Programming with DirectX 12 学习笔记之 --- 第十六章:实例化和截头锥体裁切 代码工程地址: https://git ...

随机推荐

  1. iOS7上在xib中使用UITableViewController设置背景色bug

    今天用xcode5.1设置xib中,用静态的方式设置UITableViewController中的tableview,把tableview中的backgroundColor改变后,xib上有效果,但是 ...

  2. 【JAVA、C++】LeetCode 007 Reverse Integer

    Reverse digits of an integer. Example1: x = 123, return 321 Example2: x = -123, return -321 解题思路:将数字 ...

  3. 用Navicat for oracle导入现有数据库

    重要参考:http://www.admin5.com/article/20130420/499241.shtml 前期准备,参考另一篇随笔. 安装Oracle,PL/SQL, 新建表空间myTS,新建 ...

  4. C/C++函数参数读取顺序

    #include <iostream> #include <stdio.h> using namespace std; void B(int a, int b){ cout & ...

  5. grep -n 显示行号

    [root@86 ~]# grep -n "StartDiscoverers" /usr/local/zabbix/etc/zabbix_server.conf 176:### O ...

  6. 《Java并发编程实战》学习笔记 线程安全、共享对象和组合对象

    Java Concurrency in Practice,一本完美的Java并发参考手册. 查看豆瓣读书 推荐:InfoQ迷你书<Java并发编程的艺术> 第一章 介绍 线程的优势:充分利 ...

  7. 设计模式学习之建造者模式(Builder,创建型模式)(6)

    假如我们需要建造一个房子,并且我们也不知道如何去建造房子,所以就去找别人帮我们造房子 第一步: 新建一个房子类House,里面有房子该有的属性,我们去找房子建造者接口HouseBuilder,我们要建 ...

  8. [图文详解] Sublime Text在Windows/Ubuntu/Mac OSX中配置使用CTags

    很开发者都在找Sublime Text中函数转跳的功能,这个是软件自身没有的功能,要靠CTags这个插件配合CTags的可执行程序的实现的.按照我的理解是CTags扫描索引你的项目文件,然后subli ...

  9. poj 3517 约瑟夫环

    最简单的约瑟夫环,虽然感觉永远不会考约瑟夫环,但数学正好刷到这部分,跳过去的话很难过 直接粘别人分析了 约瑟夫问题: 用数学方法解的时候需要注意应当从0开始编号,因为取余会等到0解. 实质是一个递推, ...

  10. ML 04、模型评估与模型选择

    机器学习算法 原理.实现与实践——模型评估与模型选择 1. 训练误差与测试误差 机器学习的目的是使学习到的模型不仅对已知数据而且对未知数据都能有很好的预测能力. 假设学习到的模型是$Y = \hat{ ...