记录生活
存档 Archives : September, 2009

SET QUOTED_IDENTIFIER

<Category: 数据库> 发表评论

SET QUOTED_IDENTIFIER
使 Microsoft® Server™ 遵从关于引号分隔标识符和文字字符串的 -92 规则。由双引号分隔的标识符可以是 Transact- 保留关键字,或者可以包含 Transact- 标识符语法规则通常不允许的字符。

阅读这篇文章的其余部分 »

本文来自: SET QUOTED_IDENTIFIER

OpenSource ETL工具 CloverETL

<Category: 数据仓库> 发表评论

http://www.cloveretl.com/

基于Java的开源ETL工具,整个产品由3部分组成: Server、 Engine、 Designer

CloverETL Server有web管理面板,不错
Live demo:http://server-demo.cloveretl.com:8080/clover/
Use clover/clover as username & password.

阅读这篇文章的其余部分 »

本文来自: OpenSource ETL工具 CloverETL

linux性能调优相关命令

<Category: Linux> 发表评论

vmstat //显示虚拟内存系统的信息

[root@localhost data]$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
1 0 1019928 9208 552 13068 0 1 2 3 2 11 0 1 99 0 0

vmstat -s //显示系统相关的统计信息

[root@localhost data]$ vmstat -s
1503536 total memory
1494452 used memory
737280 active memory
716504 inactive memory
9084 free memory
568 buffer memory
13068 swap cache
1020116 total swap
1019912 used swap
204 free swap
766762 non-nice user cpu ticks
99531 nice user cpu ticks
368471 system cpu ticks
276516956 idle cpu ticks
99902 IO-wait cpu ticks
904491 IRQ cpu ticks
303246 softirq cpu ticks
0 stolen cpu ticks
4230818 pages paged in
7955904 pages paged out
263626 pages swapped in
439208 pages swapped out
1335966703 interrupts
158691754 CPU context switches
1280769454 boot time
126233 forks

阅读这篇文章的其余部分 »

本文来自: linux性能调优相关命令

linux find用法大全

<Category: Linux> 发表评论

由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。即使系统中含有网络文件系统( NFS),find命令在该文件系统中同样有效,只你具有相应的权限。

在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(这里是指30G字节以上的文件系统)。

阅读这篇文章的其余部分 »

本文来自: linux find用法大全

linux文件合并

<Category: Linux> 发表评论

# a
在这个文件的命令模式下:
shfit+G (把光标定位到最后一行)
:r b (把文件b内容读取到当前当前光标的下一行)
:w c (写新文件c)

or
cat a b >c

总结:第一种方法更加灵活,如果是直接加在a文件末尾,第二种更加简单

本文来自: linux文件合并

请问KM照片数如何清零?

<Category: 摄影> 2 条评论

宾得文件编号的问题困扰了好久,现在终于解决了,哈哈

请问KM照片数如何清零?
请按照以下步骤操作:关机->取出存储卡->清空存储卡上面的照片->插入存储卡->开机->按菜单(menu)->记录模式->选择第3个->选定"记忆"选项->进入记忆子项->选择档案编号->把勾去掉.然后退出菜单.拍一张照片.这时这张照片就是0001的编号.然后你可以按前面的说明,把档案编号的勾再打上.这样以后照片就会顺着0001的编号接下去了.

关于档案编号开启与关闭的说明
开启:已保存到前一个资料夹的最后幅影像的档案编号将保存,建立新文件夹,影像也将依次指派档案编号
关闭:每一次建立新资料夹保存影像时,保存到该资料夹的第一幅影像的档案编号将从0001开始.

本文来自: 请问KM照片数如何清零?

SQL函数大全及用法

<Category: SQL Server, 数据库> 5 条评论

--聚合函数
use pubs
go
select avg(distinct price) --算平均数
from titles
where type='business'
go
use pubs
go
select max(ytd_sales) --最大数
from titles
go

use pubs
go
select min(ytd_sales) --最小数
from titles
go

use pubs
go
select type,sum(price),sum(advance) --求和
from titles
group by type
order by type
go

use pubs
go
select count(distinct city) --求个数
from authors
go

use pubs
go
select stdev(royalty) --返回给定表达式中所有值的统计标准偏差
from titles
go

阅读这篇文章的其余部分 »

本文来自: SQL函数大全及用法

关系代数、各种join的区别[转]

<Category: 数据库> 发表评论

使用关系代数合并数据
1
合并数据集合的理论基础是关系代数,它是由E.F.Codd于1970年提出的。
在关系代数的形式化语言中:
 用表、或者数据集合表示关系或者实体。
 用行表示元组。
 用列表示属性。
关系代数包含以下8个关系运算符
 选取――返回满足指定条件的行。
 投影――从数据集合中返回指定的列。
 笛卡尔积――是关系的乘法,它将分别来自两个数据集合中的行以所有可能的方式进行组合。
阅读这篇文章的其余部分 »

本文来自: 关系代数、各种join的区别[转]

SQL Server查询中处理特殊字符

<Category: SQL Server> 3 条评论

我们都知道SQL Server查询过程中,单引号“'”是特殊字符,所以在查询的时候要转换成双单引号“''”。
但这只是特殊字符的一个,在实际项目中,发现对于like操作还有以下特殊字符:下划线“_”,百分号“%”,方括号“[]”以及尖号“^”。
其用途如下:
下划线:用于代替一个任意字符(相当于正则表达式中的 ? )
百分号:用于代替任意数目的任意字符(相当于正则表达式中的 * )
方括号:用于转义(事实上只有左方括号用于转义,右方括号使用最近优先原则匹配最近的左方括号)
尖号:用于排除一些字符进行匹配(这个与正则表达式中的一样)以下是一些匹配的举例,需要说明的是,只有like操作才有这些特殊字符,=操作是没有的。
a_b... a[_]b%
a%b... a[%]b%
a[b... a[[]b%
a]b... a]b%
a[]b... a[[]]b%
a[^]b... a[[][^]]b%
a[^^]b... a[[][^][^]]b%

在实际进行处理的时候,对于=操作,我们一般只需要如此替换:
' -> ''
对于like操作,需要进行以下替换(注意顺序也很重要)
[ -> [[] (这个必须是第一个替换的!!)
% -> [%] (这里%是指希望匹配的字符本身包括的%而不是专门用于匹配的通配符)
_ -> [_]
^ -> [^]

在sql语句中,有些特殊字符,是sql保留的。比如 ' [ ] 等。我们可以先看看它们的用法。
2 U* S# k6 B4 Y5 ^# c3 {, E3 i& Z( k
. O2 G, T" R- n# E4 D+ s& w+ a4 q 当需要查询某数据时,加入条件语句,或着当你需要insert记录时,我们用 ' 来将字符类型的数据引起来。比如:) c( H* }# u+ L# v6 c* q! o$ N
Select * from Customers where City = 'London'
; y5 B. U/ K* {" W ] 当表的名字或列的名字中,含有空格等一些特殊字符时,我们需要用[] 将表名引起来,告诉语法分析器,[]号内的才是一个完整的名称。比如
, E& R8 w! T# c4 u* f! ESelect * from [Order Details]% X3 g1 s' A# v4 q; R
如果,字符数据中,含有 ' 改怎么办呢?其实,好多人在这里并没有处理字符川中 ' 符号,才造成sql 注射危险。就那上面的那个例子。在Sql语句拼接的时代,比如
$ Q' a0 ^0 V# a' U1 P$ Z% ^ ~9 Z! v
string = "select * from Customers where CustomerID = '" + temp + "'";* a: n# ~- ]3 s+ l' z# a8 ^
如果,我给temp赋值为 Tom' or 1=1 --- - t8 f2 n( T; H9 i+ P9 [
那么你拼接起来的语句为 select * from Customers where CustomerID = 'Tom' or 1=1 --- ' " @8 H+ V0 p5 C
哈哈,1=1 衡为真,---会把后面的sql语句注释掉。而前面因为有输入的 ' 而使的语句是合法的。那or的条件,会把所有的记录都选出来。这就是sql注入。在做用户登陆时,如果没有处理该问题,那你的系统受危害的可能性会很高的。
2 d! C( @+ y. l& Y7 g9 @$ p7 ?3 X 如何处理字符数据中的 ' 符号呢? 方法很简单,用两个 ' 符号代替一个。 比如,其实际传入的值为Lon'don,处理后为
' c+ t$ `$ Y# J) `! a2 U8 ISelect * from Customers where City = 'Lon''don'# n" M3 w3 c$ d, s8 f' T
如果表或列的名称中含有 [ 或 ] 字符呢?比如Select * from [Order] Details],那中间 ] 符号岂不是先和第一个[ 配了。后面的就是非法的了。怎么办呢? 简单,使用 ]] 代替 ] 。对于[,则无须处理。那就该为! Z& I0 j- g7 G% @
Select * from [Order]] Details]

-------------------------以上来自网络,未一一验证
1.有这样一个库:$(DatabaseNa[]me)
我们可以这样使用:
use "$(DatabaseNa[]me)";
select * from dbo.app_dataconnection;
或者use [$(DatabaseNa[]me)];
这样也是可以的。
2.库改名,加个单引号:$(DatabaseNa[]me')
就只能这样了:
use "$(DatabaseNa[]me')";
select * from dbo.app_dataconnection;
3.如果再加个双引号呢

本文来自: SQL Server查询中处理特殊字符