<?php
/*************************************************************
MySql类封装:
首先连接数据库,需要有参数
参数如何传?
1、可以用配置文件
2、可以通过构造函数传参
**************************************************************/
class SqlHelper{
private $host;
private $user;
private $pwd;
private $dbName;
private $charset;
private $conn = null; //保存连接资源 public function __construct(){
$this->host = 'localhost';
$this->user = 'xuwm';
$this->pwd = 'bW7LA2pMDAEtnVB7';
$this->dbName = 'gamejj';
$this->charset='utf8';
//连接
$this->connect($this->host, $this->user, $this->pwd);
//选库
$this->switchDb($this->dbName);
//设置字符集
$this->setChar($this->charset);
} //负责连接
private function connect($host, $user, $pwd){
$conn = mysql_connect($host, $user, $pwd);
if (!$conn) {
echo "Unable to connect to DB: " . mysql_error();
exit;
}
$this->conn = $conn;
} //选库
public function switchDb($db){
$sql = 'use ' . $db; //注意user 和 ' 有一个空格
$this->query($sql);
} //设置字符集
public function setChar($char){
$sql = 'set names ' . $char;
$this->query($sql);
} //关闭连接
public function close(){
mysql_close($this->conn);
} //负责发送sql查询
public function query($sql){
$result = mysql_query($sql, $this->conn);
return $result;
} //获取多行多列的select结果
public function getAll($sql){
$list = array();
$result = $this->query($sql);
if(!$result)
return false;
while($row= mysql_fetch_assoc($result)){
$list[] = $row;
}
return $list;
} //获取一行数据 常用于 聚合函数
public function getRow($sql){
$result = $this->query($sql);
if(!$result)
return false;
$row= mysql_fetch_assoc($result);
return $row;
} //获取一个值
public function getOne($sql){
$result = $this->query($sql);
if(!$result)
return false;
$row= mysql_fetch_row($result);
return $row[0];
} } //$mysql = new SqlHelper();
/*
var_dump($mysql);
$sql = "insert goods values(1121, 4, '苹果')";
$mysql->query($sql); $sql = 'select * from goods';
$list = $mysql->getAll($sql);
var_dump($list); $sql = 'select * from goods where goods_id=4';
$list = $mysql->getRow($sql);
var_dump($list); $sql = 'select count(*) from goods';
$list = $mysql->getOne($sql);
var_dump($list);
*/

一个比较常用的关于php下的mysql数据操作类的更多相关文章

  1. 1.4 数据库和常用SQL语句(正文)——MySQL数据库命令和SQL语句

    前面我们已经讲述了,登录时,我们使用mysql –u root –p命令进行,此时如果设置了密码,则需要输入密码. 输入密码后即进入MySQL的操作界面,此时,命令行窗体左侧显示"mysql ...

  2. 转 【MySQL】常用拼接语句 shell 下执行mysql 命令

    [MySQL]常用拼接语句 前言:在MySQL中 CONCAT ()函数用于将多个字符串连接成一个字符串,利用此函数我们可以将原来一步无法得到的sql拼接出来,在工作中也许会方便很多,下面主要介绍下几 ...

  3. Linux下的MySQL简单操作(服务启动与关闭、启动与关闭、查看版本)

    小弟今天记录一下在Linux系统下面的MySQL的简单使用,如下: 服务启动与关闭 启动与关闭 查看版本 环境 Linux版本:centeros 6.6(下面演示),Ubuntu 12.04(参见文章 ...

  4. Ubuntu16.04下修改MySQL数据的默认存储位置

    由于在Linux下MySQL默认是存储在/var/lib/mysql目录下,mysql的数据会非常大,由于/var所划分的空间不够大,所以我们需要将mysql数据存放路径修改一下,放到大分区里面,以便 ...

  5. flask框架下读取mysql数据 转换成json格式API

    研究了一天 因为需要从数据库拿数据然后转换成json的格式 expose出去为 API 发现一条数据是容易,两条以上我居然搞了这么久 好歹出来了 先贴一下 后面更新 mysql的操作 比较容易了htt ...

  6. WINDOWS下更改MYSQL数据路径(datadir)后服务启动1067解决不能改变mysql数据库存储位置

    晚上安装完MYSQL(系统:深度WINXPSP2, MYSQL版本:5.1.32)后,用MYSQL自带的配置工具配置完发现默认的数据存放路径是:C:/Documents and Settings/Al ...

  7. 在window环境下挂载mysql数据卷

    1.提前在指定的目录下创建一个my.cnf文件,目录名最好为英文且不带特殊符号和空格,文件内容如下,注意:粘贴时要把每一行末尾的空格去除,否则运行时会报错说utf8编码错误 [mysqld] user ...

  8. linu下修改mysql数据库面

    修改密码:1.例如你的 root用户现在没有密码,你希望的密码修改为123456,那么命令是:mysqladmin -u root password 1234562.如果你的root现在有密码了(12 ...

  9. linux下备份mysql数据

    一.业务场景 自己现在做的项目基本上已经开发完成,正式开始上线运行,主要包含两个子项目一个是小程序的后台,一个是后台管理系统. 正式开始运行一段时间后,基本上也没什么BUG了,整个项目都已经能够正常的 ...

随机推荐

  1. 安卓中adapter的应用

    个人菜鸟总结,期待大神指点,悉心倾看! Adapter是ListView界面与数据之间的桥梁,Adapter提供对数据的访问,也负责为每一项数据产生一个对应的View(白话通俗点:先写adapter为 ...

  2. X Window 设定介绍

    在 Unix Like 上面的图形用户接口 (GUI) 被称为 X 或 X11 X11 是一个『软件』而不是一个操作系统: X11 是利用网络架构来进行图形接口的执行与绘制: 最著名的 X 版本为 X ...

  3. plink:将bed文件转化为ped,map文件

    用--recode命令,--out表示转化的文件的名字,本例已经命名为“filter” /plink-1.07-x86_64/plink --bfile filter --recode --out f ...

  4. eclipse Juno Indigo Helios Galileo 版本

    Galileo Ganymede Europa 这些名字代表eclipse不同的版本 2001年11月7日 ,Eclipse 1.0发布  半年之后,2002年6月27日Eclipse进入了2.0时代 ...

  5. const限定符

    1 const的作用 便于进行类型检查.可以保护被修饰的东西.避免不必要的内存分配.为函数重载提供一个参考. 2 const成员函数 const成员函数只能访问数据成员的值,而不能修改他. #incl ...

  6. 关于okhttp

    本文出处:http://www.tuicool.com/articles/rArq63u 为什么需要一个HTTP库 Android系统提供了两种HTTP通信类,HttpURLConnection和Ht ...

  7. Log4net日志GUI配置工具

    关于log4net的配置文章在园子里真的很多,但是有关GUI界面配置的文章确定太少,改写了一个以前很早的工具 以前的那个有很多的问题,这个基本的大的问题没有,可能一个小问题还是需要修改下,基本功能肯定 ...

  8. linux tcp协议定时器

    1 连接建立定时器:75秒 2 保活定时器:2小时又10分钟 3 重传定时器:根据RTT计算 4 2MSL定时器:最大报文段存活时间 5 持续定时器

  9. 标签控制器  UITabBarController

    UITabBarController和UINavigationController类似,UITabBarController也可以轻松地管理多个控制器,轻松完成控制器之间的切换.   #import ...

  10. 第七天:JS内置对象-String字符串对象

    1.String对象  String对象用于处理已有的字符串 字符串可以使用双引号或单引号 String对象有一些常用的方法和属性,例如length 示例代码: <!DOCTYPE html&g ...