SQL Server 的一个陷阱

今天发现一些数据有异常,开头的字符是Unicode 0xFEFF, 于是将其删除,于是执行下列语句:
UPDATE table SET data = RIGHT(data, LEN(data)-1) WHERE LEN(data)>0 AND data LIKE NCHAR(0xFEFE)+N’%’
结果很不幸啊,全部数据都被去掉了一个字符
于是,又用下列语句验证了一下:
SELECT COUNT() FROM table WHERE 1=1
SELECT COUNT(
) FROM table WHERE data LIKE NCHAR(0xFEFE)+N’%’
结果一样,就是说,全部数据都中选.

幸好事先保存了备份. 不然麻烦可真大.

SQL Server 还原时改名

想比较一下备份和当前的差别,于是将备份恢复到一个新库中,但由于原库存在,还原失败(错误:3154), 怎么办呢?
记得以前曾经干过类似的事,于是再重新摸索了一下,这次记下来,也许今后用得到。

SQL Server 还原时改名,例如将db1的备份db1.bak还原到一个新数据库db2
要点:
1 不要事先建立数据库
2 右击数据库,选择还原文件和文件组
3 找到db1.bak
4 在数据库名称处输入db2
5 GO

no ugly url

一个极其简单的wordpress插件, 让url清清爽爽, 拒绝难看的url.

<?php>
/*
* Plugin Name: no ugly url
* Plugin URI: http://lshuzhi.com/no-ugly-url/
* Description: not use ugly permalinks such as http://lshuzhi.com/%e6%a0%87%e9%a2%98/
* Description(Chinese): 避免难看的url,例如http://lshuzhi.com/%e6%a0%87%e9%a2%98/
* Version: 1.0.0
* Author: shuzhi
* Author URI: http://www.lshuzhi.com/no-ugly-url/
* License: GPL
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/

add_filter( ‘wp_unique_post_slug’, ‘wp_plugin_no_ugly_url’, 0, 2);

function wp_plugin_no_ugly_url($slug, $post_ID) //, $post_status, $post_type, $post_parent, $original_slug )
{
    if ( strpos($slug, ‘%’) !== false ) {
    $slug = $post_ID;
    }
    return $slug;
}
<?>

download no_ugly_url.zip