ldapsearch使用例

指定LDAP服务器:

ldapsearch -h <server> -x 'sn=name'

指定返回结果最大为10条:

ldapsearch -h <server> -x -z 10 'sn=name'

(Read More)

Oracle管理SQL语句

Oracle管理中常用的SQL语句。

(Read More)

Oracle常用SQL语句

Oracle使用过程中经常会用到的SQL语句。

(Read More)

Google Maps第二版API升级指南

这篇文档描述了如何将第一版的Google Maps API从升级到2006年4月3日发布的第二版。如果你的网站是2006年4月3日之前开发的,你应该依据该文档的说明将你的网站升级到API的最新版本。

(Read More)

ORA-01779错误的处理方法

Oracle中试图对一个子查询进行更新时可能会出现ORA-01779错误。该错误的内容为: ORA-01779: cannot modify a column which maps to a non-key-preserved table

(Read More)

Oracle SQL性能调节的方法

简单介绍一下使用tkprof工具调整Oracle SQL语句性能的方法。

(Read More)

SQL*Plus常用命令

启动时不连接服务器。

sqlplus /nolog

连接服务器的命令:

connect username/password@hoststring

设置行宽为1000字符。

set line 1000

设置列group_name的宽度为30字符。

col group_name format a30

启动外部编辑器编辑sql语句。

ed

设置ed命令启动的外部编辑器为vim。

define _EDITOR=vim

使用Windows下的gvim作为编辑器时应当加上-f参数。

define _EDITOR="gvim -f"

设置每页显示200条记录。

set pagesize 200

登录时自动执行的SQL脚本。

$ORACLE_HOME/sqlplus/admin/glogin.sql

各个用户自己的登录脚本。Oracle会在执行完glogin.sql之后执行该文件。搜索顺序为:当前目录->$SQLPATH。

login.sql

(Read More)

利用有限自动机分析正则表达式

程序编译的第一个阶段是词法分析,即把字节流识别为记号(token)流, 提供给下一步的语法分析过程。而识别记号的方法就是正则表达式的分析。 本文介绍利用有限自动机分析表达式的方法。

(Read More)

PHP5中虚函数的实现

学过C++的人都应该知道C++中有个虚函数的概念。而在php5中如何实现这个虚函数呢?请看下面的代码:

<?php
 class A {
    public function x() {
        echo "A::x() was called.\n";
    }
    public function y() {
        self::x();
        echo "A::y() was called.\n";
    }
    public function z() {
        $this->x();
        echo "A::z() was called.\n";
    }
}
class B extends A {
    public function x() {
        echo "B::x() was called.\n";
    }
}

$b = new B();
$b->y();
echo "--\n";
$b->z();
?>

该例中,A::y()调用了A::x(),而B::x()覆盖了A::x(),那么当调用B::y()时,B::y()应该调用A::x()还是B::x()呢?在C++中,如果A::x()未被定义为虚函数,那么B::y()(也就是A::y())将调用A::x(),而如果A::x()使用virtual关键字定义成虚函数,那么B::y()将调用B::x()。然而,在PHP5中,虚函数的功能是由 self 和 $this 关键字实现的。如果父类中A::y()中使用 self::x() 的方式调用了 A::x(),那么在子类中不论A::x()是否被覆盖,A::y()调用的都是A::x();而如果父类中A::y()使用 $this->x() 的方式调用了 A::x(),那么如果在子类中A::x()被B::x()覆盖,A::y()将会调用B::x()。

上例的运行结果如下:

A::x() was called. A::y() was called. 
--
B::x() was called. A::z() was called. 

(Read More)

php安装memo

Windows+Apache2下安装php5的方法:

  1. 解压php到某个地方

  2. 修改apache的httpd.conf,添加如下几行:

     LoadModule php5_module "c:/php/php5apache2.dll"
     AddType application/x-httpd-php .php
     PHPIniDir "C:/php"
    
  3. 将php目录下的php5ts.dll复制到%PATH%环境变量指定的地方,比如C:\Windows\system32下,或者与apache.exe放到同一目录下

  4. 修改php目录下的php-dist.ini为php.ini

  5. 编辑php.ini,修改extension_dir为“php所在的路径” + \ext

(Read More)