MySql的dql和dml操作的封装,成为固定的工具类

在我们使用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);*/?>

UseSqlTool.php中引入SqlTool.class.php文件,然后把对象实例化,然后我们,要做的就是写出SQL语句,然后调用它,我觉得SQL语句也可以实现封装,但一想,这样的话,代码的自由度就不高了,所以,先对语句分类,然后写出成员方法,而且,要说的是,这里,可以有效的去保护数据,仅仅只有类内的元素才能够去访问数据,,不仅仅做到了方便,而且做到了安全。

欲望以提升热忱,毅力以磨平高山。

MySql的dql和dml操作的封装,成为固定的工具类

相关文章:

你感兴趣的文章:

标签云: