摘要: 今天上线了一个项目,上线之后发现用户线上报名提交报名信息的时候居然报错,之前在测试服务器上运行正常。更奇怪的是只有IE和Chrome报错FireFox居然运行正常,于是在后台文件中加入跟踪日志文件跟踪用户提交的信息,发现IE提交的用户数据传到服务器端全部都是乱码。这种情况很可能是编码的问题,项目的web.config配置了<globalization requestEncoding="gb2...阅读全文
posted @ 2009-08-17 17:23 知乎者也 阅读(1044) 评论(3) 编辑
最近一段时间在安装ActivePython之后,打开pythonwin交互式的控制台,输入print 'Hello world!'回车之后,程序突然崩溃报错。
之前一直都没有这样的问题,怀疑是不是安装包有问题,接着卸载掉原先安装的ActivePython程序,重新下载安装之后问题依旧。
打开google搜索问题,发现说是安装了Visual Studio 2008之后产生了冲突,按照牛人的解决方法下载了scintilla.dll,然后覆盖C:\Python26\Lib\site-packages\pythonwin路径下的scintilla.dll,打开pythonwin之后运行成功,。在此记录下该问题,以后XDJM们再遇到这种问题也有个参考。
posted @ 2009-08-04 21:38 知乎者也 阅读(422) 评论(0) 编辑

在sqlserver中我们一般用output标志变量为输出参数,常用在存储过程返回某个值。

最近在写T-sql语句的时候同事向我介绍了output子句的用法。

假设现在有这样一张表t_users

现在有这样一个需求,从表中取出一条记录插入到其他的表中之后并且删除记该录。

通常的做法是:

(1)先取出user_no为1的用户数据插入到另外一张表(t_user_temp 一张用户信息临时表)中:

 

1 insert into t_user_temp(user_no, user_name, create_datetime)
2 select user_no, user_name, create_datetime from t_users where user_no = 1

 

(2)删除表t_users中user_no为1的数据

 

delete from t_users
where user_no = 1

 

我们现在可以使用output去可以做这些事情,只要一个sql语句就可以实现以上需求:

 

delete top(1from t_users
output deleted.
user_name, deleted.create_datetime into t_user_temp(user_name, create_datetime)

 

这样在表t_user中删除一条记录并将该数据插入到表t_user_temp中,这种写法是不是方便了很多?

sqlserver帮助文档中这样说明output子句:

 

返回受 INSERT、UPDATE 或 DELETE 语句影响的每行的信息,或者返回基于上述每行的表达式。这些结果可以返回到处理应用程序,以供在确认消息、存档以及其他类似的应用程序要求中使用。此外,也可以将结果插入表或表变量。

用于:

DELETE

INSERT

UPDATE

 

语法:

 

<OUTPUT_CLAUSE> ::=
{
    [ OUTPUT <dml_select_list> INTO { @table_variable | output_table } [ ( column_list ) ] ]
    [ OUTPUT <dml_select_list> ]
}
<dml_select_list> ::=
{ <column_name> | scalar_expression } [ [AS] column_alias_identifier ]
    [ ,...n ]

<column_name> ::=
{ DELETED | INSERTED | from_table_name } . { * | column_name }

 

实例:

 

1 USE AdventureWorks;
2 GO
3 DELETE TOP(1) dbo.DatabaseLog WITH (READPAST)
4 OUTPUT deleted.*
5 WHERE DatabaseLogID = 7;
6 GO
7 
8 

 

很多的时候查看sqlserver的帮助能够发现很多东西能够简化原有的操作。

大家要是想多了解output的用法可以查看帮助文档自己多多的尝试。

posted @ 2009-06-17 22:46 知乎者也 阅读(1580) 评论(8) 编辑
摘要: 本次测试的数据量是60000条数据分别在两个DB的数据库中创建相同结的表:[代码]分别插入600000条数据进去,下面进行查询数据的性能对比:SQLiteDB类[代码]SQLServerDB类:[代码]以下是调试代码:[代码]对比出来SQLite花费时间:462 SQL-Server花费时间:3281这个只是一个简单的对比。可能中间有一些问题,欢迎大家指正。阅读全文
posted @ 2009-03-23 15:06 知乎者也 阅读(347) 评论(3) 编辑

在C#中进行整型转换的时候我们一般都会用到Convert.ToInt..和int.Parse,其实他们之间还是有区别的。

今天用Reflector查看了Convert类的源代码:

Code

当被转换值为null是并不会抛出异常,而是返回0

但int 1 = int.Parse(null)就会抛出异常,所以建议大家以后在项目开发中尽量用Convert.ToInt..或者int.TryParse进行转换。

15:19:00

posted @ 2009-03-20 15:20 知乎者也 阅读(355) 评论(1) 编辑
摘要: iis小工具这是一个对iis进行启动、停止、重启的小工具。是在.net1.1环境下开发的。目前功能还是比较的简单,希望有兴趣的可以和我一起将它的功能做的在强大一点。阅读全文
posted @ 2007-09-11 18:05 知乎者也 阅读(30) 评论(0) 编辑