MySQL
文章平均质量分 67
宇宙第一帅
技术成就梦想
展开
-
数据库的操作笔记
MySQL的常见操作在这里先做一下总结,已经整合到代码里面,经过检验无误。/*创建一个数据库*/create database xuning_test;/*说明当时使用数据库对象*/use xuning_test;/*向数据库中添加表并且定义表的结构*/create table person( id int not null, name varchar(16) no原创 2015-03-04 17:37:37 · 398 阅读 · 0 评论 -
ThinkPHP整合Smarty模板引擎的使用以及查询方法汇总
其实说到整合smarty我们根本就没有作什么,要做的主要还是对于模板分配各种变量的使用,这才是重点,其次还有一些配置信息要自己去填写;先说一下配置,同样的,在主目录的common下面的config文件,把配置信息写入里面就可以了,其中主要有下面一下的配置信息。'TMPL_ENGINE_TYPE' => 'Smarty',//'TMPL_L_DELIM' =>原创 2015-04-29 18:29:31 · 1245 阅读 · 0 评论 -
ThinkPHP完成对数据的添加以及表单数据的收集
数据添加分两种方式,一种是数组的方式,另一种是使用AR的方式添加,其实这两种方式添加的方式是相同的,就是一个规范的不同而已,所谓AR,就是://一个数据模型代表一张表。//一个对象代表一条数据。//一个字段代表一个对象的属性这样也符合传统的思维习惯,下面是数据模拟添加的实例代码: $temp=D('User'); // $arr=array('id'=>11,'nam原创 2015-04-29 19:01:57 · 1581 阅读 · 0 评论 -
Thinkphp的A,R,M,D方法区别
在Thinkphp中,实例化对象有这么几种方法,如果是类,有A和R方法,区别是A方法只是对象的实例化,而R方法是可以同时实例化对象里面的方法的,这里需要去指定,如下面的实例代码:<?phpnamespace Admin\Controller;use Think\Controller;class GoodsController extends Controller{ public fu原创 2015-04-28 20:08:34 · 1481 阅读 · 0 评论 -
网络攻防之SQL注入攻击
SQL注入攻击的根源是因为SQL规范的漏洞,但是,因为规范的长期存在以及使用,几乎已经不太可能去修改规范了,只能够从开发者本身去避免攻击,虽然SQL注入之前很严重,但现在相对控制的很好,这里仅仅作为一种学习的内容。 测试过程如下: 1:搭建PHP,mysql开发环境,可以详见我的另一篇博客自定义开发PHP环境 2:添加数据库,表,以及表内容。3:分别测试 万能密码,万能用户名原创 2015-06-13 21:20:24 · 1726 阅读 · 0 评论 -
Java操作Oracle数据库自建工具库
在学习Java操作Oracle数据库的时候,忽然想到这个可不可以像php那样自己建立一个工具类,这样的话可以大大的减小代码的复杂度。也可以提高工作效率。java如果不能自己建立工具类,那是非常可笑的,但是,在建立的过程中,出现了一些问题,希望在以后不要犯类似的错误。首先,我们在自建工具类之前必然是先模拟测试的,在这个例子当中,其过程如下:1:引入Oracle的驱动程序2:建立Ora原创 2015-08-16 20:42:56 · 1183 阅读 · 0 评论 -
Oracle与Mysql数据的事务处理机制
相比oracle的事务处理,Mydql相对还是简单一点的,但是事务作为一项重要的安全机制在数据库里面是必不可少的,特别是里面的事务回滚机制非常的有用,不多说了,先说一下mysql的事务处理:Mysql简单的回滚:第一步:开始事务:start transaction;第二步:执行dml等其他的变化操作。第三步:混滚到开始事务之前状态: rollback;这样的话在执行完毕原创 2015-08-26 10:46:33 · 2082 阅读 · 0 评论 -
数据库面对不同业务逻辑约束条件的选择
数据表的约束我觉得还是很有用的,至少在数据库优化方面还是用的比较多的,可以大大的提高检索效率,作用也是比较明显的,另外一点,表的约束可以在某种程度上简化程序代码端的业务逻辑量,这寄存于DBMS上面,其维护性我绝得韩式比较高的,这一般类型的数据库里面,我们常见的约束有:主键,外键,为空,唯一等,这四类是比较常见的约束,我绝对约束的实质应该是为真实的业务逻辑而服务的,否则则没有意义,所以,面对不同的业务原创 2015-08-28 19:41:54 · 1365 阅读 · 0 评论 -
使用Hibernate时数据库的设计问题
Hibernate作为一个ORM框架是比较火热的,虽然在性能上会有一定的下降,但是,其优越性是非常明显的,不仅仅是在设计模式方面,而且在数据库的适应性方面,因为语句使用 了HQL语句,使对象操作可以适用于绝大多数主流的数据库,一个很好的例子,如果有这方面的需求,就是如果更换数据库的话,仅仅修改hibernate.cfg.xml文件就可以了,当时我是这么想的,当时在一般意义上的数据库设计修改也是完全原创 2016-01-06 18:46:39 · 1548 阅读 · 0 评论 -
ThinkPHP实现对数据库中表的修改删除以及两种原生SQL语句的执行
说道数据的修改就是主要用到了save的方法。在建立对象的时候无论是用D方法还是用M的方法,都可以相应的正确建立对象。然后,在我们建立完对象之后,我们就应该确定自己要修改的属性以及他的值,然后可以用建立关联数组的方法,写入要修改的数据。当上面的工作完成之后,就应该用我们的save方法进行修改。下面是自己的实例:function update(){$goods=M("empte原创 2015-04-02 20:39:06 · 2631 阅读 · 0 评论 -
ThinkPHP整合Smarty模板引擎操作mysql数据库
要想做到数据和前台页面真正的分离,就必然会用到smarty模板,这样,仅仅的传输数据就可以了。配置Smarty的模板默认设置:'TMPL_ENGINE_TYPE' => 'Smarty'Smarty不解析模板内的标签及内容: {literal} {/literal};//但有的不能用如果建立的Smarty模板引擎,那么就不能用Think的对象来定义对象数据了,应该由Think变为S原创 2015-03-31 15:20:37 · 1065 阅读 · 0 评论 -
MySQL与php的连接操作要点
MySQL扩展库操作MySQL数据库的步骤如下:1:获取连接.2:选取书库。3:设置操作编码。4:发送SQL指令(MySQL数据库可以分为四种指令:1:ddl: 数据定义语言。2:dml:数据操语言(如CURD);3:dql:数据查询语言。(如select)4:dtl:数据事物语言。)。5:接收返回结果,并且处理。6:断开连接。具体的原创 2015-03-08 20:57:01 · 838 阅读 · 0 评论 -
以表格的方式返回MySql数据库中表的数据方法
在一般的网站中,我们会通常看到,很多数据库中表的数据在浏览器都是出现在表格中的,一开始让自己感到很神奇,但是仔细想想也不算太复杂,既然可以dql和dml的一般返回,以表格的方式返回应该也不成问题,但是,有一点说明的是,在客户端设计脚本去实现问题是不对的,即便可以实现起来也是非常复杂,所以,只能在服务器的方面去考虑,想想问题解决的方式就有了,即在返回的时候打印表格标签和对应属性和属性值,虽然说这种方原创 2015-03-09 21:39:29 · 1954 阅读 · 0 评论 -
MySqli扩展库的对象对象属性特点以及与mysql库面向过程的比较
在学习完mysql库来操作mysql的方式,这是一种面向过程的方式,但是,面向对象是大势所趋,mysqli扩展库也就有必须学习的必要了,mysqli作为一个类库,在我们使用的时候都是以面向对象的方式进行操作,所以,这种方案是比较好的,为此,我特意做了它与mysqli扩展库的对应比较:下面是mysql库的连接,查询语句,返回结果,释放资源的过程:<?php //1:连接数据库原创 2015-03-10 12:42:58 · 1356 阅读 · 0 评论 -
MySql的dql和dml操作的封装,成为固定的工具类
在我们使用php去操作MySQl的时候,就像前面讲的SQL语句分为,数据查询语句(dql),数据操作语句(dml),还有数据资源语句等。但是,我们用的最大的就是前两者,查询是数据库操作的重中之重,而CRUD又是数据库操作必不可少的,不管是学习什么数据库语言都是如此,所以,我就在日常的学习过程中,针对这两种最为重要的语句,把他们的每一步操作都封装到类里面,这样,有利于代码的重复利用性,和原创 2015-03-09 21:19:32 · 1012 阅读 · 0 评论 -
MySql的中文识别问题
关于MySql的中文识别问题,一直本来想去回避这个问题的,但是今天在做项目的时候确实用到了,这就让我很恼火,于是,想尽了所有办法,搞了我一晚上,终于找到了对于这个问题准确的说对我而言的解决方案。由于我是直接安装的wampserver,不知道是版本还是什么原因,我竟然在my.ini的文件找不到相应的对应的字符编码配置。哎,想想,算了吧,这样不行,就直接用命令吧,于是输入了下面【1】【2】的指原创 2015-03-09 21:03:18 · 976 阅读 · 0 评论 -
乱码未死,还是要继续努力。。。
本来以为自己对乱码的问题处理已经做得比较好了,但是,在我的这一天中,给了我沉重的一棒,让我痛苦不堪,无地自容。。。。。我这里所说的乱码,并不仅仅完全是字符编码,还有关于这狗血的操作系统和权限配置。首先,问题的过程是这样的:由于我在使用mysqli扩展库的过程中,出现了不识别中文的问题,起初我觉得这是一个小问题,但是,是我想错了,当我设置好了几乎完美的字符编码的时候,问题依然没有解决,我也知原创 2015-03-10 21:42:20 · 781 阅读 · 0 评论 -
Mysqli的批量CRUD数据
学会了使用了mysqli扩展库之后,总体感觉比面向过程的方法更加合理化,面向对象是大势所趋,所以绝不能仅仅只用那一套老的mysql库了,也不利于php对mysql的操作,因为我们在实际的开发中,很多还是面向对象开发的,在这里,就说一下mysqli之所以成为扩展库自然有其理由,就批量操作的特性就大大的提高了代码的执行效率。还是和以往一样,我喜欢把sql语句分为dql语句和dml语句,主要原创 2015-03-11 16:37:26 · 785 阅读 · 0 评论 -
Mysqli的预编译机制处理批量数据过程
mysqli增强,还有一部分是对事物处理机制和预编译机制的增加,其实这两者都是为安全和执行效率着想的,这里主要说一下mysqli的预编译机制。所谓的预编译,并不是在php的内核进行编译,而是数据库管理系统进行预编译,由于用于批量数据,说白了就是把一部分固定的数据格式先在mysql上面进行一次编译,编译之后就不在对其进行再次编译,我们要做的就是,向编译的占位符(就是数据占位)添加数据,之后发送,原创 2015-03-12 09:26:38 · 1607 阅读 · 0 评论 -
关于数据库反范式设计
之前并没有对这个问题有一个确切的概念,之所以要反范式,一定要知道为什么要反范式设计,设立就先从三范式说起。从我的记忆中,三范式这么要求:第一范式:一张表不能够有相同的字段,这是所有范式的基础。第二范式:一张表必须要有唯一标示第三范式:不依赖其他非主属性上面的范式从数据库的设计角度并没有什么问题,但是,在实际的项目设计中会出现很大的问题。举例: 使用ORM框架原创 2016-05-02 13:04:13 · 2649 阅读 · 0 评论