MySql的dql和dml操作的封装,成为固定的工具类
来源:互联网 发布:管家婆数据库 编辑:程序博客网 时间:2024/05/17 21:28
在我们使用php去操作MySQl的时候,就像前面讲的SQL语句分为,数据查询语句(dql),数据操作语句(dml),还有数据资源语句等。
但是,我们用的最大的就是前两者,查询是数据库操作的重中之重,而CRUD又是数据库操作必不可少的,不管是学习什么数据库语言都是
如此,所以,我就在日常的学习过程中,针对这两种最为重要的语句,把他们的每一步操作都封装到类里面,这样,有利于代码的重复利用
性,和代码的简洁性,把他们存在于一个外部文件的里面,用的时候就直接引入该文件,非常方面,提高开发效率,不多说了,下面是封装
的具体代码,注:为表达直接清晰,有的数据时定好的数据,如数据库等。
SqlTool.class.php
<?phpclass SqlTool{private $conn;private $host="localhost";private $user="root";private $password="toor";private $db="test";function SqlTool(){$this->conn=mysql_connect($this->host,$this->user,$this->password);if(!$this->conn){die("对不起,连接数据库失败<br/>错误原因:".mysql_error());}mysql_select_db($this->db,$this->conn);//选择数据库mysql_query("set names utf8");}public function execute_dql($sql){//执行数据库dql语句,即查询操作$res=mysql_query($sql) or die("查询失败,失败原因".mysql_error());return $res;}//在这里就实现了对CRUD的完全封装public function execute_dml($sql){$b=mysql_query($sql,$this->conn);if(!$b){//return 0;//运行失败echo "对不起,操作失败";}else{if(mysql_affected_rows($this->conn)>0){//return 1;//运行成功echo "操作成功!";}else{//return 2;//成功,但没有影响行数echo "操作成功,但是行数没有受到影响";}}mysql_close($this->conn);//关闭连接}}?>
UseSqlTool.php
<?phprequire_once "SqlTool.class.php";//引入SqlTool的类文件/************************dml操作******************************//*//添加数据$sql="insert into test1 (name,password,email,age) values('xuning_a',md5('78989'),'xiaohei@qq.com',18)";//Sql语句$SqlTool=new SqlTool();$res=$SqlTool->execute_dml($sql);*///删除数据/*$sql="delete from test1 where id = 21";//Sql语句$SqlTool=new SqlTool();$res=$SqlTool->execute_dml($sql);*///修改数据$sql="update test1 set age=100 where id=9";//Sql语句$SqlTool=new SqlTool();$res=$SqlTool->execute_dml($sql);/**********************dql操作*********************************//*//查询操作$sql="select * from test1";$SqlTool=new SqlTool();$res=$SqlTool->execute_dql($sql);//这一串是用户提示:echo "用户ID"." "."用户名"." "."用户密码"." "."邮箱"." "."年龄"." "."<br/>";while($row=mysql_fetch_row($res)){//显示所有的用户数据foreach($row as $key =>$val){echo "$val"." ";}echo "<br/>";}mysql_free_result($res);*/?>
0 0
- MySql的dql和dml操作的封装,成为固定的工具类
- PHP MySql的dql和dml操作的封装,成为固定的工具类
- 对MySql的dql和dml操作进行封装,成为固定的工具类
- jdbc工具类,实现了通用的dml和dql操作
- PHP MySQL 数据库dml语句与dql语句的操作
- MYSQL操作之DML和DQL
- 探究MySQL的DML提交事务的意义和DQL是否有必要提交事务
- oracle的DQL、DML、DDL、DCL的概念和区别
- 对数据库DML操作进行封装成简单的工具
- 关于DDL、DML和DCL、DQL的总结与理解
- DQL、DML、DDL、DCL的定义
- DML,DCL,DDL,DQL的区别详解
- DML,DDL,DCL,DQL的区别
- DML、DDL、DCL与DQL的区别
- DML,DCL,DDL,DQL的区别。
- SQL的DQL、DML、DDL、DCL
- DML,DDL,DCL,DQL的区别
- DDL DML DCL DQL的区别
- PAT A1010 Radix (有点问题)
- 服务器上生成和获取xml
- 15.ios之Quartz2D
- hdu1470Closest Common Ancestors LCA
- 1180 对称矩阵
- MySql的dql和dml操作的封装,成为固定的工具类
- 2015-03-09数据加载、存储与文件格式(1)
- online_judge_1206
- Comparable与Comparator的差异
- 初识Linux下C语言编程
- Jquery easyUI dialog的close和destroy
- 已知两个1~30之间的数字,甲知道两数之和,乙知道两数之积。 。。。。。
- Eclipse Java注释模板设置详解
- 【POJ 3468】A Simple Problem with Integers