- 浏览: 42087 次
最新评论
文章列表
虽然查询速度慢的原因很多,但是如果通过一定的优化,也可以使查询问题得到一定程度的解决
查询速度慢的原因很多,常见如下几种:
1.没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)
2.I/O吞吐量小,形成了瓶颈效应。
3.没有创建计算列导致查询不优化。
4.内存不足
5.网络速度慢
6.查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)
7.锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷)
8.sp_lock, sp_who, 活动的用户查看,原因是读写竞争资源。
9.返回了不必要的行和列
10.查询语句不好,没有优化
可以通过如下方法来优化查询 :
1. ...
SQL语句行列转换的两种方法 case...when和pivot函数应用,运用pivot 函数只支持数据库版本2005以上的。一般运用case when else end 的方法比较多,比较普遍
/*创建数据库*/
CREATE DATABASE tmp
go
USE tmp
go
/*创建数据库测试表*/
CREATE TABLE [Scores]
(
[ID] INT IDENTITY(1, 1)
PRIMARY KEY ,
[Student] VARCHAR(20) ,
...
SQL Server 2005中的基础知识。
1. ACID:指数据库事务正确执行的四个基本要素缩写:
1.原子性2.一致性3.隔离性4.持久性
2.数据库对象:表(table) 视图(view) 存储过程(stored procedure) 函数(function)索引(index)
3.SQL Server 2005中包含master、model、msdb、tempdb四个系统数据库。
4.使用T-SQL语句创建数据库:
CREATE DATABASE [ApressFinacial] ON PRIMARY
( NAME = N'ApressFinacial', FILENAME ...
php socket模拟http中post或者get提交数据的示例代码。
代码:
sock_post.php:
<?php
/**
* php socket模拟post\get请求
* 编辑:脚本学堂 http://www.jbxue.com
*/
function sock_post($url, $data='') {
$url = parse_url($url);
$url['scheme'] || $url['scheme'] = 'http';
$url['host'] || $url['host'] = $_SERVER['HTTP_HOST'] ...
学过C的人用php的时候一般会相当顺手,而且感到php太方便太轻松。但在变量作用域这方面却与c有不同的地方,搞不好会相当郁闷,就找不到错误所在。
在php编程中,遇到一个全局变量在函数中的问题。
这里分享下php 变量作用 ...
一些下载网站为了支持更多的格式,一般情况下支持rar,zip等常用的压缩包文件的下载,对于iso等很多文件都是不支持下载,其实通过设置mime即可。
一般软件下载
.torrent
application/octet-stream
.7z
application/octet-stream
.iso
application/octet-stream
手机相关类型:
.apk
application/vnd.android.package-archive
.ded
application/vnd.iphone
.dmg
application/octet-s ...
PHP 具有两个函数,可以在字符串和数组之间互相进行转换。
例如:
$array=explode(separator,$string);
$string=implode(glue,$array);
使用和理解这两个函数的关键之处是分隔符(separator)和胶合符(glue)关系。当把一个数组转换成一个字符串时,将会设置胶合符——将被插入到生成字符串中的数组值之间的字符或代码。
相反,当把字符串转换成数组时,要指定分隔符,它用于标记什么应该变成独立数组元素。例如,以字符串开始:
$s1='Mon-Tue-Wed-Thu-Fri';
$days_array=explode('- ...
对php中的数组与字符串的转换函数进行了详细的整理汇总。
1.将一个字符串转化为数组
str_split()用于将一个字符串转化为数组
语法:
str_split(string,length)
string是必须的,是要分割的字符串;
//length是可选的,规定每个数组元素的长度
tips:
如果 length 小于 1,str_split() 函数将返回 false。
如果 length 大于字符串的长度,整个字符串将作为数组的唯一元素返回。
例子:
<?php
$str="www.jbxue.com";
print_r(str_split($str)); ...
分享有关php下载的相关文章。
先分享几个文件下载类:
php文件下载类(支持多种文件类型)
php 文件上传类(轻便型)
php 文件上传类与图片处理类的实现代码
用类来实现,主要是可以做到统筹管理、规范、可以对异常进行控制等。
另为,收集了几个入门级的文件上传与下载的例子,贴在这里。
php实现上传与下载文件的一段代码
php 判断上传文件类型
php文件上传原理深入分析与理解
先备着,以后有空了好好研究。
所谓,命令模式:将一个请求封装为一个对象,从而你可用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销操作。
命令类:
1.命令角色:声明了一个给所有具体命令类的抽象接口。这是一个抽象角色。
2.具体命令角色:定义一个接受者和行为之间的弱耦合;实现execute方法,负责调用接受的相应操作。execute()方法通常叫做执行方法
3.客户角色:创建一个具体命令对象并确定其接受者。
4.请求者角色:负责调用命令对象执行请求,相关的方法叫做行动方法。
5.接受者角色:负责具体实施和执行一个请求。
作用:
1.抽象出待执行的动作以参数化对象。
2.在不同的时刻指定、排列和执行请求 ...
所谓,观察者模式:定义对象间一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。
观察者类:
1.抽象主题角色:主题角色将所有对观察者对象的引用保存在一个集合中,每个主题可以任意多个观察者。抽象主题提供了增加和删除观察者对象的接口。
2.抽象观察者角色:为所有的具体观察者定义一个接口,在观察的主题发生改变时更新自己
3.具体主题角色:存储相关状态到具体观察者对象,当具体主题的内部状态发生改变时,给所有登记过的观察者发出通知。具体主题角色通常用一个具体子类实现。
4.具体观察者角色:存储一个具体主题对象,存储相关状态,实现抽象观察者角色所要求的更新接口 ...
生成随机密码的函数,可自定义密码长度。
<?php
/**
* 随机密码
* edit www.jbxue.com
*/
#生成随机密码
function MakePass($length)
{
$possible = "0123456789!@#$%^&*()_+".
"abcdefghijklmnopqrstuvwxyz".
"ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$str = "";
while(strlen($str) < $length)
...
本文出处参考:http://www.jbxue.com/article/6793.html
为大家介绍一个可以生成方便打印的页面的php代码,很多新闻网站都有这个功能,生成的页面简洁大方,去掉了部分多余的元素,整个页面只包括标题、发布时间、内容等主要元素。这个不同于window.print()的功能哦。
具体实现代码如下:
<?
//从环境变量中得到文件的相对路径
$page=substr($SCRIPT_NAME,1);
// 显示一个图标并连接到打印页
// 便于打印页面的生成程序pfp.php
?>
<a href="pfp.php?page= ...
本文原始链接:http://www.jbxue.com/article/6640.html
1、iconv()函数
iconv函数可以实现字符集间的相互转换。例如:从GB2312转换为UTF-8。
iconv函数在php5中内置,GB字符集默认打开。
2、iconv()错误
iconv在转换字符”—”到gb2312时会出错,此 ...
一个不错的ftp操作类,可以完成复制、移动、删除文件、创建目录等操作,有需要的朋友,可以参考下。
本文原始链接:http://www.jbxue.com/article/7669.html
1、ftp类
<?php
/**
* 作用:FTP类( 拷贝、移动、删除文件/创建目录 )
* site http://www.jbxue.com
*/
class class_ftp
{
public $off; // 返回操作状态(成功/失败)
public $conn_id; // FTP连接
/**
* 方法:FTP连接
...