<?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. Ajax2

    一.完整版Ajax $.ajax({ url: "Ashxs/Login.ashx", data: { "name": name, "pwd" ...

  2. 安全关闭多Activity的Application

    1.发送广播给每一个打开的Activity. 2.采用startActivityForResult()方法递归关闭. 3.使用EventBus框架的监听者模式,关闭时触发监听事件.

  3. wkwebview 和 JS 自用

    -(void)webView:(WKWebView *)webView didCommitNavigation:(null_unspecified WKNavigation *)navigation{ ...

  4. Slave failed to initialize relay log info structure from the repository

    现象 查看slave 服务状态 show slave status\G; 错误 Last_Errno: 1872 Last_Error: Slave failed to initialize rela ...

  5. mormot orm rest注意事项

    mORMot创建ORM RestFul,当CreateMissingTables的时候报错,搜了n多资料没搞定,后来胡乱建了个表测试了一通搞定了. ORM对应的每个数据表都需要一个ID字段并设置主键, ...

  6. Fiddler怎么对IPhone手机的数据进行抓包分析

    http://www.cr173.com/html/20064_1.html Fiddler绝对称得上是"抓包神器", Fiddler不但能截获各种浏览器发出的HTTP请求, 也可 ...

  7. 【java】:定时任务

    PS:转 http://blog.csdn.net/lotusyangjun/article/details/6450421/

  8. C# 字符串替换Replace

    C# 中的石strA.Replace(strB,strC)函数可以实现将strA中的strB替换为strC. 但是容易出错的地方是,这并不是就直接替换好了,此函数的返回值才是替换好的字符串,所以还要要 ...

  9. 用Backbone.js创建一个联系人管理系统(二)

    欢迎大家回来继续这一教程,第一部分我们学习了model,collection和view在Backbone中的 基本用法,还有怎么样用主视图去绑定collection去渲染出每个Contact. 这部分 ...

  10. three.js 之旅 (五)--跟场景scene相关的函数

    1.scene.add(obj);   在场景中添加物体 2.scene.remove(obj);   在场景中移除物体 3.scene.children();  获取场景中所有子对象的列表 4.sc ...