write down,forget

一个还不错的基于XML的轻量级CMS – GetSimple

<Category: 资源分享>

GetSimple   下载地址:http://get-simple.info/

The Simplest Content Management System EVER

GetSimple has everything your client needs, and nothing a CMS doesn’t

支持主题和插件,另外还可以对各种操作进行撤销恢复,看起来还不错,现在是2.0版本,先试试看~

演示地址:http://medcl.net/articles/

安装界面:
1

后台:
2

前台:
3

本文来自: 一个还不错的基于XML的轻量级CMS – GetSimple

新浪微博RSS订阅Feed生成服务

<Category: 小道消息>

2011-12-4, 更新,支持自定义rss标题,服务放在SAE上一段时间了,速度比较快,大家都用这个新地址吧:
http://rssing.sinaapp.com
2011-8-10, 更新:支持微博的个性化域名,忘记烦人的用户Id吧,rss标题更改为个性化域名,下面以姚大姐的为例:

http://medcl.net/sinarss/yaochen

什么?不知道什么是个性化域名?

—下面的都是浮云(很久之前的更新日志了)———

最近弄博客的Lifestream,需要收集几个RSS地址,我想把新浪微博的RSS也集成上去,可是,新版新浪rss地址是什么?官方一找,谁知官方没有提供,没有办法,只有自己搞了,用ASP.NET提供一个页面,传上你的用户ID,然后就可以生成xml格式的文档,将这个地址拿到你的RSS阅读器或者其他什么玩意都可以。

源码:http://bitbucket.org/medcl/sina-twitter-rss-feed-generator/downloads http://www.box.net/shared/059xe6z2sk

网址如下: http://medcl.com/SinaRss.aspx?uid=1451057603

将uid=后面的数字换成你自己的用户Id就可以了

这个ID不知道?

登陆到进入到你的微博首页,点击我的粉丝,这个时候可以看到地址栏,里面就有你的用户ID了。

更新:

2010.3.7 增加编码设置参数,默认utf-8哦,使用方法:

GB2312编码: http://medcl.com/SinaRss.aspx?uid=1451057603&encode=gb2312

UTF8编码: http://medcl.com/SinaRss.aspx?uid=1451057603&encode=utf-8

2010.3.30 源文件提供下载,方便大家自己部署,下载地址:http://www.box.net/shared/059xe6z2sk

2010.4.17 严重:空间搬家了,暂时不支持ASP.NET环境,原来的相应地址请换成http://lakeyon.com/SinaRss.aspx?uid=1451057603&encode=gb2312 【将medcl.net换成lakeyon.com即可,谢谢】

2010.4.21 添加代理,原地址继续使用,实际跳转到lakeyon.com

2010.5.9 添加参数originalimage来指定是否显示微博里面的原图,使用方式:显示原图: http://medcl.com/SinaRss.aspx?uid=1451057603&encode=&originalimage=true ps:大图有时候显示不正常显示缩略图:http://medcl.com/SinaRss.aspx?uid=1451057603&encode=&originalimage=false

2010.5.21 添加参数quotation来制定是否去掉引号,默认去掉,可选false或true如:http://medcl.com/SinaRss.aspx?uid=1451057603&quotation=false

2010.5.22 显示@转发来源及添加转发来源连接,限制标题长度50,添加参数titlelimit来限制标题长度,如:titlelimit=120,如果需要使用完整标题,使用参数fulltitle=true完整的例子可能如下(ps:参数都为可选,可一个和多个,fulltitle和titlelimit是有冲突的,当fulltitle为true,titlelimt失效):限制标题长度120: http://medcl.com/SinaRss.aspx?uid=1451057603&titlelimit=120显示完整标题:http://medcl.com/SinaRss.aspx?uid=1451057603&fulltitle=true

2010.6.27 写rss到文件,10分钟有效期
2010.6.30 源码和部署文件发布地址迁移到http://bitbucket.org/medcl/sina-twitter-rss-feed-generator/downloads

2010.8.17 http://bit.ly/getmyrss 在线定制页面(墙了点这里, http://medcl.com/

2011.3.8 连接地址请修改为medcl.com的,以前使用medcl.net的注意替换。

使用方法:

Untitled

随便找个人的,试试,就王小丫吧,找到ID:1217680514

Untitled1

然后她的RSS地址就是:http://medcl.com/SinaRss.aspx?uid=1217680514

这Y头的微博就两条,很明显不常上微博

Untitled2

订阅就可以了,我的通过Lifestream订阅结果如下

Untitled2

新浪微博的RSS Feed功能。

试试这个,我的新浪微博PC客户端,

新浪微博PC客户端-微博发布工具

本文来自: 新浪微博RSS订阅Feed生成服务

WPF初学,控件定位、拖拽与画线

<Category: WPF>

看图,控件可以在canvas里面自由布局,控件自由拖动(事件还有点问题,图方便,无视),贝塞尔曲线自动连接两个控件(参数可以调整),通过这个例子搞明白了原理,以后想怎么做都方便了,哈哈

1
2

阅读这篇文章的其余部分

本文来自: WPF初学,控件定位、拖拽与画线

NHibernate性能监视工具-NHibernate Profiler的使用

<Category: .NET>

首先这玩意不是免费的,不过可以试用(网上可以找到破解版),官方下载地址:http://nhprof.com/Download

下面说下怎么使用,其实很简单,配置几个配置文件就可用了。

阅读这篇文章的其余部分

本文来自: NHibernate性能监视工具-NHibernate Profiler的使用

Windows命令行使用大全

<Category: 资源分享>

收藏级
参考来源:Windwos Server 2003 sp2
有关某个命令的详细信息,请键入 HELP 命令名
阅读这篇文章的其余部分

本文来自: Windows命令行使用大全

深入讲解数据库中User和Schema的关系

<Category: SQL Server>

 User和Schema比较容易混淆,搞不清他们之间是什么关系,转一篇文章。

假如我们想了解数据库中的User和Schema究竟是什么关系,首先必须了解一下数据库中User和Schema到底是什么概念。

       在SQL Server2000中,由于架构的原因,User和Schema总有一层隐含的关系,让我们很少意识到其实User和Schema是两种完全不同的概念,不过在SQL Server2005中这种架构被打破了,User和Schema也被分开了。

首先我来做一个比喻,什么是Database,什么是Schema,什么是Table,什么是列,什么是行,什么是User?我们可以可以把Database看作是一个大仓库,仓库分了很多很多的房间,Schema就是其中的房间,一个Schema代表一个房间,Table可以看作是每个Schema中的床,Table(床)就被放入每个房间中,不能放置在房间之外,那岂不是晚上睡觉无家可归了J。,然后床上可以放置很多物品,就好比Table上可以放置很多列和行一样,数据库中存储数据的基本单元是Table,现实中每个仓库放置物品的基本单位就是床, User就是每个Schema的主人,(所以Schema包含的是Object,而不是User),其实User是对应与数据库的(即User是每个对应数据库的主人),既然有操作数据库(仓库)的权利,就肯定有操作数据库中每个Schema(房间)的权利,就是说每个数据库映射的User有每个Schema(房间)的钥匙,换句话说,如果他是某个仓库的主人,那么这个仓库的使用权和仓库中的所有东西都是他的(包括房间),他有完全的操作权,可以扔掉不用的东西从每个房间,也可以放置一些有用的东西到某一个房间,呵呵,和现实也太相似了吧。我还可以给User分配具体的权限,也就是他到某一个房间能做些什么,是只能看(Read-Only),还是可以像主人一样有所有的控制权(R/W),这个就要看这个User所对应的角色Role了,至于分配权限的问题,我留在以后单独的blog中详述。比喻到这里,相信大家都清楚了吧。

阅读这篇文章的其余部分

本文来自: 深入讲解数据库中User和Schema的关系

SQL条件处理–Case语句

<Category: SQL Server>

SQL中使用CASE处理条件

     在使用SQL的过程中,有时候可能会要对数据进行条件查询。比如字段A为True时查询出“男”,否则查询出“女”。这样就可以不在程序中在去判断了。在SQL中,可以利用Case语句来完成这样的查询。

一、Case介绍

CASE
计算条件列表并返回多个可能结果表达式之一。

CASE 具有两种格式:

简单 CASE 函数将某个表达式与一组简单表达式进行比较以确定结果。
CASE 搜索函数计算一组布尔表达式以确定结果。
两种格式都支持可选的 ELSE 参数。

语法
简单 CASE 函数:

CASE input_expression
    WHEN when_expression THEN result_expression
        [ …n ]
    [
        ELSE else_result_expression
    END

CASE 搜索函数:

CASE
    WHEN Boolean_expression THEN result_expression
        [ …n ]
    [
        ELSE else_result_expression
    END

参数
input_expression

是使用简单 CASE 格式时所计算的表达式。Input_expression 是任何有效的 Microsoft® SQL Server™ 表达式。

WHEN when_expression

使用简单 CASE 格式时 input_expression 所比较的简单表达式。When_expression 是任意有效的 SQL Server 表达式。Input_expression 和每个 when_expression 的数据类型必须相同,或者是隐性转换。

n

占位符,表明可以使用多个 WHEN when_expression THEN result_expression 子句或 WHEN Boolean_expression THEN result_expression 子句。

THEN result_expression

当 input_expression = when_expression 取值为 TRUE,或者 Boolean_expression 取值为 TRUE 时返回的表达式。result expression 是任意有效的 SQL Server 表达式。

ELSE else_result_expression

当比较运算取值不为 TRUE 时返回的表达式。如果省略此参数并且比较运算取值不为 TRUE,CASE 将返回 NULL 值。Else_result_expression 是任意有效的 SQL Server 表达式。Else_result_expression 和所有 result_expression 的数据类型必须相同,或者必须是隐性转换。

WHEN Boolean_expression

使用 CASE 搜索格式时所计算的布尔表达式。Boolean_expression 是任意有效的布尔表达式。

二、SQL中的Case语句实例

    CASE 函数用于计算多个条件并为每个条件返回单个值。CASE 函数通常的用途是使用可读性更强的值替换代码或缩写。下面的查询使用 CASE 函数重命名书籍的分类,以使之更易理解。

USE pubs
SELECT
   CASE type
      WHEN ‘popular_comp’ THEN ‘Popular Computing’
      WHEN ‘mod_cook’ THEN ‘Modern Cooking’
      WHEN ‘business’ THEN ‘Business’
      WHEN ‘psychology’ THEN ‘Psychology’
      WHEN ‘trad_cook’ THEN ‘Traditional Cooking’
      ELSE ‘Not yet categorized’
   END AS Category,
CONVERT(varchar(30), title) AS “Shortened Title”,
price AS Price
FROM titles
WHERE price IS NOT NULL
ORDER BY 1

下面是结果集:

category            shortened title                Price �
——————- —————————— ——-
Business            Cooking with Computers: Surrep 11.95 �
Business            Straight Talk About Computers  19.99 �
Business            The Busy Executive’s Database  19.99 �
Business            You Can Combat Computer Stress 2.99  �
Modern Cooking      Silicon Valley Gastronomic Tre 19.99 �
Modern Cooking      The Gourmet Microwave          2.99  �
Popular Computing   But Is It User Friendly?       22.95 �
Popular Computing   Secrets of Silicon Valley      20.00 �
Psychology          Computer Phobic AND Non-Phobic 21.59 �
Psychology          Emotional Security: A New Algo 7.99  �
Psychology          Is Anger the Enemy?            10.95 �
Psychology          Life Without Fear              7.00  �
Psychology          Prolonged Data Deprivation: Fo 19.99 �
Traditional Cooking Fifty Years in Buckingham Pala 11.95 �
Traditional Cooking Onions, Leeks, and Garlic: Coo 20.95 �
Traditional Cooking Sushi, Anyone?                 14.99  

(16 row(s) affected)

CASE 函数的另一个用途给数据分类。下面的查询使用 CASE 函数对价格分类。

SELECT
   CASE
      WHEN price IS NULL THEN ‘Not yet priced’
      WHEN price < 10 THEN ‘Very Reasonable Title’
      WHEN price >= 10 and price < 20 THEN ‘Coffee Table Title’
      ELSE ‘Expensive book!’
   END AS “Price Category”,
CONVERT(varchar(20), title) AS “Shortened Title”
FROM pubs.dbo.titles
ORDER BY price

下面是结果集:

Price Category        Shortened Title    �
——————— ——————–
Not yet priced        The Psychology of Co
Not yet priced        Net Etiquette      �
Very Reasonable Title You Can Combat Compu
Very Reasonable Title The Gourmet Microwav
Very Reasonable Title Life Without Fear  �
Very Reasonable Title Emotional Security:�
Coffee Table Title    Is Anger the Enemy?�
Coffee Table Title    Cooking with Compute
Coffee Table Title    Fifty Years in Bucki
Coffee Table Title    Sushi, Anyone?     �
Coffee Table Title    The Busy Executive’s
Coffee Table Title    Straight Talk About�
Coffee Table Title    Silicon Valley Gastr
Coffee Table Title    Prolonged Data Depri
Expensive book!       Secrets of Silicon V
Expensive book!       Onions, Leeks, and G
Expensive book!       Computer Phobic AND�
Expensive book!       But Is It User Frien

(18 row(s) affected)

本文来自: SQL条件处理–Case语句

SET PARSEONLY 与SET NOEXEC (Transact-SQL)

<Category: SQL Server>

SET PARSEONLY
检查每个 Transact-SQL 语句的语法并返回任何错误消息,但不编译和执行语句。
SET PARSEONLY { ON | OFF }

当 SET PARSEONLY 为 ON 时,SQL Server 只分析语句。当 SET PARSEONLY 为 OFF 时,SQL Server 编译并执行语句。

SET PARSEONLY 的设置是在分析时设置,而不是在执行或运行时设置。

在存储过程或触发器中不要使用 PARSEONLY。如果 OFFSETS 选项为 ON 而且没有出现错误,则 SET PARSEONLY 返回偏移量。

SET NOEXEC (Transact-SQL)

编译每个查询但不执行查询。
SET NOEXEC { ON | OFF }
当 SET NOEXEC 为 ON 时,SQL Server 将编译每一批处理 Transact-SQL 语句但并不执行它们。当 SET NOEXEC 设置为 OFF 时,所有批处理将在编译后执行。

SQL Server 中的语句执行包含两个阶段:编译和执行。该设置可用于让 SQL Server 在执行 Transact-SQL 代码时,验证代码中的语法和对象名。它也可以用于调试通常是较大的批处理中的部分语句。

SET NOEXEC 设置是在执行或运行时设置,而不是在分析时设置。

 

USE AdventureWorks;
GO
PRINT ‘Valid query’;
GO
— SET NOEXEC to ON.
SET NOEXEC ON;
GO
— Inner join.
SELECT e.EmployeeID, e.Title, v.Name
FROM HumanResources.Employee e
INNER JOIN Purchasing.PurchaseOrderHeader poh
ON e.EmployeeID = poh.EmployeeID
INNER JOIN Purchasing.Vendor v
ON poh.VendorID = v.VendorID;
GO
— SET NOEXEC to OFF.
SET NOEXEC OFF;
GO

PRINT ‘Invalid object name’;
GO
— SET NOEXEC to ON.
SET NOEXEC ON;
GO
— Function name used is a reserved keyword.
USE AdventureWorks;
GO
CREATE FUNCTION dbo.Values(@EmployeeID INT)
RETURNS TABLE
AS
RETURN (SELECT PurchaseOrderID, TotalDue
FROM dbo.PurchaseOrderHeader
WHERE EmployeeID = @EmployeeID)
— SET NOEXEC to OFF.
SET NOEXEC OFF
GO

PRINT ‘Invalid syntax’;
GO
— SET NOEXEC to ON.
SET NOEXEC ON;
GO
— Built-in function incorrectly invoked
SELECT *
FROM fn_helpcollations;
— Reset SET NOEXEC to OFF.
SET NOEXEC OFF;
GO

本文来自: SET PARSEONLY 与SET NOEXEC (Transact-SQL)

从数据库随机读取数据

<Category: SQL Server>

示例代码:
SQL Server:Select Top * From  表 Order By NewID()  
Access  :Select Top * From 表 Order By Rnd(ID) 
        *说明-Rnd(ID) 其中的ID是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段(UserName)  Select Top 10 * From 表 Order BY Rnd(Len(UserName))
 
MySql:Select * From 表 Order By Rand() Limit 10

本文来自: 从数据库随机读取数据

set nocount on 是什么意思?

<Category: SQL Server>

我想請問一下: set nocount on 是什麼意思, 為什麼很多的stored procedures的第一行都有遮一句話??多謝!!!
每次我们在使用查询分析器调试SQL语句的时候,通常会看到一些信息,提醒我们当前有多少个行受到了影响,这是些什么信息?在我们调用的时候这些信息有用吗?是否可以关闭呢?

答案是这些信息在我们的客户端的应用程序中是没有用的,这些信息是存储过程中的每个语句的DONE_IN_PROC 信息。

我们可以利用SET NOCOUNT 来控制这些信息,以达到提高程序性能的目的。

MSDN中帮助如下:

SET NOCOUNT
使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。

语法
SET NOCOUNT { ON | OFF }

注释
当 SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。当 SET NOCOUNT 为 OFF 时,返回计数。

即使当 SET NOCOUNT 为 ON 时,也更新 @@ROWCOUNT 函数。

当 SET NOCOUNT 为 ON 时,将不给客户端发送存储过程中的每个语句的 DONE_IN_PROC 信息。当使用 Microsoft SQL Server 提供的实用工具执行查询时,在 Transact-SQL 语句(如 SELECT、INSERT、 UPDATE 和 DELETE)结束时将不会在查询结果中显示”nn rows affected”。

如果存储过程中包含的一些语句并不返回许多实际的数据,则该设置由于大量减少了网络流量,因此可显著提高性能。

SET NOCOUNT 设置是在执行或运行时设置,而不是在分析时设置。

权限
SET NOCOUNT 权限默认授予所有用户。

结论:我们应该在存储过程的头部加上SET NOCOUNT ON 这样的话,在退出存储过程的时候加上 SET NOCOUNT OFF这样的话,以达到优化存储过程的目的。

多说两句:

1:在查看SqlServer的帮助的时候,要注意“权限”这一节,因为某些语句是需要一定的权限的,而我们往往忽略。

2:@@ROWCOUNT是返回受上一语句影响的行数,包括找到记录的数目、删除的行数、更新的记录数等,不要认为只是返回查找的记录数目,而且@@ROWCOUNT要紧跟需要判断语句,否则@@ROWCOUNT将返回0。

3:如果使用表变量,在条件表达式中要使用别名来替代表名,否则系统会报错。

4:在CUD类的操作中一定要有事务处理。

5:使用错误处理程序,用来检查 @@ERROR 系统函数的 T-SQL 语句 (IF) 实际上在进程中清除了 @@ERROR 值,无法再捕获除零之外的任何值,必须使用 SET 或 SELECT 立即捕

本文来自: set nocount on 是什么意思?