2008/12/31
超出的文字用省略,用…代替
2008/12/23
修改Fedora的启动模式

安装Fedora时如果选择了以命令行方式安装,完成后启动的界面也是命令行。下面介绍如何将启动模式改为图形界面:
2008/12/22
Request.QueryString得到结果中加号丢失的问题
ASP中用Request.QueryString("id")后取出的值为id='300',"+"就消失了,请问这是为什么?应该如何解决呢?
2008/12/19
Office公式出现乱码的解决办法
2008/12/15
微软安全通报:4 种方法暂屏蔽IE最新0day
IE 最新 0day 波及了微软全线系统,目前暂时没有补丁。微软于近日发布了一份安全通报,指导您如何暂时屏蔽此漏洞。漏洞出在 OLEDB32.dll 这个文件上。所以我们的目的就是屏蔽这个文件。
对此,微软连出了4个杀手锏:
1. SACL 法(仅适用于 Vista)
[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[File Security]
"%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll",2,"S:(ML;;NWNRNX;;;ME)"
将以上内容保存为 BlockAccess_x86.inf
然后在命令提示符里执行 SecEdit /configure /db BlockAccess.sdb /cfg <inf file>
其中 <inf file> 为 inf 文件路径。若成功会看到"任务成功结束"的提示。
2. 禁用 Row Position 功能法
打开注册表编辑器,将此键删除即可。
3. 取消 DLL 注册法
即可
4. 权限设置法
Vista 系统则需要输入3个命令:
icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /save %TEMP%\oledb32.32.dll.TXT
icacls "%ProgramFiles%\Common Files\System\Ole DB\oledb32.dll" /deny everyone:(F)
其中第一种方法影响最小(只影响 IE 对此 DLL 的访问)。
附:此漏洞影响的系统、软件列表
- Windows Internet Explorer 7
- Windows Internet Explorer 7 for Windows XP
- Windows Internet Explorer 7 for Windows Server 2003
- Windows Internet Explorer 7 for Windows Server 2003 IA64
- Windows Internet Explorer 7 in Windows Vista
- Windows Internet Explorer 8 Beta
- Microsoft Internet Explorer 6.0 Service Pack 2
- Microsoft Internet Explorer 6.0 Service Pack 1
- Microsoft Internet Explorer 6.0
- Microsoft Internet Explorer 5.01 Service Pack 4
- Windows Server 2008 Datacenter without Hyper-V
- Windows Server 2008 Enterprise without Hyper-V
- Windows Server 2008 for Itanium-Based Systems
- Windows Server 2008 Standard without Hyper-V
- Windows Server 2008 Datacenter
- Windows Server 2008 Enterprise
- Windows Server 2008 Standard
- Windows Web Server 2008
- Windows Vista Service Pack 1, when used with:
- Windows Vista Business
- Windows Vista Enterprise
- Windows Vista Home Basic
- Windows Vista Home Premium
- Windows Vista Starter
- Windows Vista Ultimate
- Windows Vista Enterprise 64-bit Edition
- Windows Vista Home Basic 64-bit Edition
- Windows Vista Home Premium 64-bit Edition
- Windows Vista Ultimate 64-bit Edition
- Windows Vista Business 64-bit Edition
- Microsoft Windows Server 2003 Service Pack 1, when used with:
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Web Edition
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows Server 2003, Datacenter x64 Edition
- Microsoft Windows Server 2003, Enterprise x64 Edition
- Microsoft Windows Server 2003, Standard x64 Edition
- Microsoft Windows XP Professional x64 Edition
- Microsoft Windows Server 2003 Service Pack 2, when used with:
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
- Microsoft Windows Server 2003, Web Edition
- Microsoft Windows Server 2003, Datacenter x64 Edition
- Microsoft Windows Server 2003, Enterprise x64 Edition
- Microsoft Windows Server 2003, Standard x64 Edition
- Microsoft Windows XP Professional x64 Edition
- Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
- Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
- Microsoft Windows XP Service Pack 2, when used with:
- Microsoft Windows XP Home Edition
- Microsoft Windows XP Professional
- Microsoft Windows XP Service Pack 3, when used with:
- Microsoft Windows XP Home Edition
- Microsoft Windows XP Professional
对于非 x86 系统请参考微软安全通报自行操作。
原创文章转载请注明:锐博_资源资讯共享网
2008/12/12
围绕三条主线选型ERP
ERP在国内的推广、应用已经有20多年的历史,可是直到今天,许多企业CIO还在为此困惑、迷茫,甚至有些绝望!的确,ERP给一些企业带来了荣耀和辉煌,可是也让不少企业也深陷困境,CIO为此也倍受自责。
在20年的历程中,关于ERP实施成功或失败的讨论已经连篇累牍,但是经验毕竟是有价值的,也正是这些宝贵资源让CIO不断推动企业管理信息化的发展和革新,所以当CIO真正把自己放在一个等待医治的位置上,去领会和类比成功者以及失败者轨迹的时候,失败的故事肯定会少一些!
选型好比战略,实施则是战术,在错误的战略指导下,再好的战术都无法实现目标,所以CIO 的ERP选型,是整个项目建设成功的一半,是ERP建设的重中之重,关系到企业项目的成败,可以说企业ERP实施成效的程度基本受制于企业CIO的选型,CIO千万不能轻率。
然而,如今各式各样的ERP产品数百上千种,泥沙俱下良芜难分,CIO要如何从纷乱的ERP市场学淘沙识真金?如何不会"乱花渐欲迷人眼",量体裁衣对症下药,找到合身合体、与企业融会贯通、促进企业发展壮大的ERP软件?愚以为CIO不妨围绕三条主线明确选型的主题,抓住重点,或许成功率将大为提高。
围绕技术这个"纲"进行选型
质量是产品的本,技术是产品的纲。可靠的质量、领先的技术决定领先的产品、领先的市场。所以优良技术是ERP选购的纲,纲举目张,CIO要企业ERP建设过程中一定要始终围绕技术这个"纲"进行选购投资。
技术和应用的完美结合是ERP卓越成熟的一个表现,而一个卓越的ERP应具备以下三个主要性能:
1、平台与底层技术的成熟度:平台的选择并不是成熟ERP的关键因素,但任何优秀ERP产品的平台应该能支持主流技术,完全提供多平台支持,适合企业今后的IT系统升级改造,满足技术成熟、市场占有率高、有发展前景的特点。
2、技术延展性的成熟度:ERP的一个显著特点是系统的集成性,所以系统的集成以及模块之间的无缝衔接程度应当作为ERP成熟与否的一个标准。ERP作为企业信息系统的神经中枢,要能从OA、CRM、HR、CAD、CAPP等系统中获取数据,实现数据的无缝传输。
3、技术可维护性成熟度:成熟的ERP要真正在企业内运作成功,就必须最终摆脱软件商的影响,必须是一个稳定的ERP软件,能让企业完全独立进行维护/扩展。所以在技术方面对ERP的要求是支持后台编译、预留与其他系统的接口、采用标准技术等。
国外ERP的模块设计较为简洁、实用,是在解决主要问题的基础上再考虑其他辅助模块,主推的模块还是以实现MRPII为目的,而国内ERP则是"大而全"的浮华设计模式,涵盖了MRPII以外的人事、薪资等,有的还穿插了OA软件的设计,在模块数上多于国外软件。
这些特点、性能,CIO应认真区别,择需而选。
目前国内ERP软件在平台上大多能支持主流技术平台,即SQL、SERVER、SYBASE、Oracle。目前NT/UNIX+SQL、SERVER/ORACLE+PC平台+C/S结构是ERP主流方案,今后的发展方向是NT+SQL SERVER/LINIX+B/S结构。这是今后CIO选购ERP需要认真考虑的因素。
对于仍处于起步阶段的或者希望通过ERP改进企业管理的国内企业来说,如果业务重点在生产、计划方面,国外面对中小企业的ERP软件相对比较成熟,并且大多也提供二次开发平台和各种接口以供扩展需要,比如SAP、QAD、Movex就显出其相当的实力;如果业务重点在进、销、存和财务总帐方面,则国内软件已经具备能力,且国内软件具有本土化和易于维护、服务的优点,象用友(600588行情,股吧,信息化)、金蝶、和佳、天剑等品牌不失为一种较佳的选择。典型的厂商为速达,值得中小企业CIO关注。
围绕高性价比首选ERP
价格是选购ERP至关重要的因素。尤其是今年以来,面对金融风暴严峻形势,国内进入一个高成本高风险经营时代,节支降耗、开源创收成了中小企业求生图强的不二法则,高性价比的ERP当是CIO首选。
而近年来,随着国内ERP市场突然风云骤变,价格战此起彼伏愈演愈烈,ERP价格迅速跳水,甚至打起"免费"大旗,把ERP从高高神坛上拉下,从而掀起了一场场全国ERP软件的普及风暴,使ERP大量走入全国企业,中小企业为此大受其益。
神州数码曾宣布将进入10万元以下ERP,金蝶发布小企业管理软件――KIS,强调对小企业市场的重视,用友(600588行情,股吧,信息化)则将某一低端ERP产品最低价降到了2万元,而一向高高在上、盘距高端ERP市场的SAP也曾猛打低价牌,通过渠道爆出6.8万元的低价。速达5000系列企业级产品QUICK-ERP的出现,更是将低端ERP价格拉至谷底,并可通过招商银行办理按揭消费,令人"瞠目"。顺和达丝也毫不逊色,棋高一筹,曾开创了ERP产品试用先河��采用免费下载试用方式,获取ERP精髓。诸如此类不一而足。
然而面对"象卖白菜卖ERP"的风潮,不少CIO不禁迷惑,是拜倒诱人的超低价格之下,还是继续追求高品质的"物美"? CIO不妨可先对ERP产品价格构成进行分析:
ERP标准产品分为高端ERP软件、中端ERP软件、低端的ERP软件三个系列和准ERP软件。专家分析说,面向小型和微型企业应用的ERP,一套合理目标价位应不低于5万元,面向中小企业的中端ERP,一般一套产品应在50万元以内;而面向中大型企业的ERP产品则在80-100万元之间。在生产工艺和产品结构相对简单的行业里,一般ERP会相对更便宜。
而象SAP mySAP.com和Oracle Application这两种洋产品,它们功能强大,非常复杂,实施难度大,周期长。要成功实施这样的ERP软件,价位一般都在四五百万元以上,这也不足为怪。这样的系统适合大型企业集团,业务需求纷繁复杂,并有充足预算。
而准ERP软件之所以叫它们"准ERP",是因为它们距真正的ERP软件还有一段差距,虽然其开发商们不遗余力地宣称是"面向中小企业的ERP软件",但这样的ERP软件多半来自于财务软件与进销存软件的转型,较为简单,所以卖2、3万超低价也不足为奇,一般只适合规模小、业务简单的流通业、服务业、医药业等。CIO要区分对待。
"一分价钱一分货"。CIO如何过度追求价格低廉,可能会以丧失技术水准、服务质量、甚至失败为代价。因为ERP实施的很多隐形成本您是看不到的:比如软件供应商的研发投入、为了保证永续运行的售后服务的投入、产品不成熟导致二次开发过多、实施周期拖长给企业带来的负担和失败的风险、供应商经验不足导致实施的不够深入、项目控制力度的薄弱等等。那些价廉物美、性价比高、产出比高的ERP产品应始终成为企业尤其是中小企业CIO的首选产品。
围绕服务中心选购ERP
一个中大型ERP建设项目动辄几十、上百万元,建设周期少则一年半载,多则3、4年,因此ERP商服务品质、能力关系到今后整个项目能否顺利推进、长期运行,甚至决定成败。据统计,企业选购ERP或管理软件的重要考虑因素,依序是1. 产品 2. 价格3.服务 4.公司,服务之重要可见一斑。中小企业由于自身IT技术实力薄弱,因此CIO必须对软件实施和技术支持服务尤其关注。
服务其实贯穿ERP产品思想、产品设计、研发、销售、维护、升级等全过程,没有至善的服务,就没有高质量的产品。一家经营绩效良好、经验丰富的ERP商,只有拥有完善的售后服务机制,才能提供满足各种及各地需求的服务。因此,CIO必须将ERP商是否拥有完善的售后服务机制,可否提供满足各种及各地需求的服务,与"选公司"、"比产品"一样,列为重要的评估项目。ERP流程复杂实施难度很大,如果CIO所选择的ERP商拥有广大满意的客户群,大量成功案例客户,这就是其产品及服务被广为接受的象征,这样,CIO选择这家ERP商就会有充分保障。
但是现在几乎每家ERP厂商都号称有一套标准完整的实施服务流程,但这些流程能基于多少成功案例的积累,其科学性如何?它的执行是否严格贯彻到了每一个项目和每一位顾问中,靠什么去支撑?实施流程同其他的相关服务措施是否构成了有机的统一体系,怎样不断优化?等等,这需要企业CIO们去严格把关,主要要从培训、团队构建、实施指导、网络支持服务、项目管理、二次开发、租赁、业务系统支持服务、资源外包服务等方面综合评估、考核、择取。
目前国外ERP商大都建立了严密完整的服务体系,从售前到人员教育、软件实施及客户化、二次开发都有相应的人员支持,互相衔接。人员一般都是有经验的资深顾问与工程师。相比而言,国内ERP商的服务能力体系较洋品牌相对弱些,但由于国内软件商扎根于"本土化",往往服务理念、内容更切合国内企业。
因此在正式选型之前,每个CIO应对自身的需求有个充分的了解,即评估一下自身的实施基础,再确定出选择的方向,是大型系统还是中小型系统?是国外产品还是国内产品,哪种服务更对口、适宜?等等,才会对"症"下"药"达到目标。
总之,CIO在ERP产品选型中应重点考察以下四方面:首先是品牌,品牌的知名度及美誉度一定程度上反映了ERP商的历史、资金、规模、团队和信誉的水平;其次是产品技术力,这是企业进行软件选型的第二个步骤,考察内容包括软件行业化程度的高低,产品技术的先进性,功能可否满足需求,系统是否稳定以及有无完善的实施和服务体系等。其三,是核实软件厂商的成功案例;其四,就是价格谈判了。
"乱花渐欲迷人眼,博采众长莫迟疑"。希望广大企业CIO们能在纷繁复杂的ERP选购过程中,排除干扰,博采众长,量体裁衣,找到合身合体、与企业融会贯通、促进企业发展壮大的ERP软件。
2008/12/11
SQL语句操作全集
SQL分类:
DDL―数据定义语言(Create,Alter,Drop,DECLARE)
DML―数据操纵语言(Select,Delete,Update,Insert)
DCL―数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)
首先,简要介绍基础语句:
1、说明:创建数据库
Create DATABASE database-name
2、说明:删除数据库
drop database dbname
3、说明:备份sql server
--- 创建 备份数据的 device
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
--- 开始 备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only
5、说明:删除新表drop table tabname
6、说明:增加一个列
Alter table tabname add column col type
注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。
7、说明:添加主键: Alter table tabname add primary key(col)
说明:删除主键: Alter table tabname drop primary key(col)
8、说明:创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname
注:索引是不可更改的,想更改必须删除重新建。
9、说明:创建视图:create view viewname as select statement
删除视图:drop view viewname
10、说明:几个简单的基本的sql语句
选择:select * from table1 where 范围
插入:insert into table1(field1,field2) values(value1,value2)
删除:delete from table1 where 范围
更新:update table1 set field1=value1 where 范围
查找:select * from table1 where field1 like '%value1%' ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count * as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
11、说明:几个高级查询运算词
A: union 运算符
UNION 运算符通过组合其他两个结果表(例如 TABLE1 和 TABLE2)并消去表中任何重复行而派生出一个结果表。当 ALL 随 union 一起使用时(即 union ALL),不消除重复行。两种情况下,派生表的每一行不是来自 TABLE1 就是来自 TABLE2。
B: EXCEPT 运算符
EXCEPT 运算符通过包括所有在 TABLE1 中但不在 TABLE2 中的行并消除所有重复行而派生出一个结果表。当 ALL 随 EXCEPT 一起使用时 (EXCEPT ALL),不消除重复行。
C: INTERSECT 运算符
INTERSECT 运算符通过只包括 TABLE1 和 TABLE2 中都有的行并消除所有重复行而派生出一个结果表。当 ALL 随 INTERSECT 一起使用时 (INTERSECT ALL),不消除重复行。
注:使用运算词的几个查询结果行必须是一致的。
12、说明:使用外连接
A、left outer join:
左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。
SQL: select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
B:right outer join:
右外连接(右连接):结果集既包括连接表的匹配连接行,也包括右连接表的所有行。
C:full outer join:
全外连接:不仅包括符号连接表的匹配行,还包括两个连接表中的所有记录。
其次,大家来看一些不错的sql语句
1、说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)
法一:select * into b from a where 1 <>1
法二:select top 0 * into b from a
2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)
insert into b(a, b, c) select d,e,f from b;
3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)
insert into b(a, b, c) select d,e,f from b in '具体数据库' where 条件
例子:..from b in '"&Server.MapPath(".")&"\data.mdb" &"' where..
4、说明:子查询(表名1:a 表名2:b)
select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3)
5、说明:显示文章、提交人和最后回复时间
select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b
6、说明:外连接查询(表名1:a 表名2:b)
select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c
7、说明:在线视图查询(表名1:a )
select * from (Select a,b,c FROM a) T where t.a > 1;
8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括
select * from table1 where time between time1 and time2
select a,b,c, from table1 where a not between 数值1 and 数值2
9、说明:in 的使用方法
select * from table1 where a [not] in ('值1','值2','值4','值6')
10、说明:两张关联表,删除主表中已经在副表中没有的信息
delete from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )
11、说明:四表联查问题:
select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....
12、说明:日程安排提前五分钟提醒
SQL: select * from 日程安排 where datediff('minute',f开始时间,getdate())>5
13、说明:一条sql 语句搞定数据库分页
select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段
14、说明:前10条记录
select top 10 * form table1 where 范围
15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)
select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)
16、说明:包括所有在 TableA 中但不在 TableB和TableC 中的行并消除所有重复行而派生出一个结果表
(select a from tableA ) except (select a from tableB) except (select a from tableC)
17、说明:随机取出10条数据
select top 10 * from tablename order by newid()
18、说明:随机选择记录
select newid()
19、说明:删除重复记录
Delete from tablename where id not in (select max(id) from tablename group by col1,col2,...)
20、说明:列出数据库里所有的表名
select name from sysobjects where type='U'
21、说明:列出表里的所有的
select name from syscolumns where id=object_id('TableName')
22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。
select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end),sum(case vender when 'B' then pcs else 0 end) FROM tablename group by type
显示结果:
type vender pcs
电脑 A 1
电脑 A 1
光盘 B 2
光盘 A 2
手机 B 3
手机 C 3
23、说明:初始化表table1
TRUNCATE TABLE table1
24、说明:选择从10到15的记录
select top 5 * from (select top 15 * from table order by id asc) table_别名 order by id desc
随机选择数据库记录的方法(使用Randomize函数,通过SQL语句实现)
对存储在数据库中的数据来说,随机数特性能给出上面的效果,但它们可能太慢了些。你不能要求ASP"找个随机数"然后打印出来。实际上常见的解决方案是建立如下所示的循环:
Randomize
RNumber = Int(Rnd*499) +1
While Not objRec.EOF
If objRec("ID") = RNumber THEN
... 这里是执行脚本 ...
end if
objRec.MoveNext
Wend
这很容易理解。首先,你取出1到500范围之内的一个随机数(假设500就是数据库内记录的总数)。然后,你遍历每一记录来测试ID 的值、检查其是否匹配RNumber。满足条件的话就执行由THEN 关键字开始的那一块代码。假如你的RNumber 等于495,那么要循环一遍数据库花的时间可就长了。虽然500这个数字看起来大了些,但相比更为稳固的企业解决方案这还是个小型数据库了,后者通常在一个数据库内就包含了成千上万条记录。这时候不就死定了? 采用SQL,你就可以很快地找出准确的记录并且打开一个只包含该记录的recordset,如下所示:
Randomize
RNumber = Int(Rnd*499) + 1
SQL = "Select * FROM Customers Where ID = " & RNumber
set objRec = ObjConn.Execute(SQL)
Response.WriteRNumber & " = " & objRec("ID") & " " & objRec("c_email")
不必写出RNumber 和ID,你只需要检查匹配情况即可。只要你对以上代码的工作满意,你自可按需操作"随机"记录。Recordset没有包含其他内容,因此你很快就能找到你需要的记录这样就大大降低了处理时间。
再谈随机数
现在你下定决心要榨干Random 函数的最后一滴油,那么你可能会一次取出多条随机记录或者想采用一定随机范围内的记录。把上面的标准Random 示例扩展一下就可以用SQL应对上面两种情况了。
为了取出几条随机选择的记录并存放在同一recordset内,你可以存储三个随机数,然后查询数据库获得匹配这些数字的记录:
SQL = "Select * FROM Customers Where ID = " & RNumber & " or ID = " & RNumber2 & " or ID = " & RNumber3
假如你想选出10条记录(也许是每次页面装载时的10条链接的列表),你可以用BETWEEN 或者数学等式选出第一条记录和适当数量的递增记录。这一操作可以通过好几种方式来完成,但是 select 语句只显示一种可能(这里的ID 是自动生成的号码):
SQL = "Select * FROM Customers Where ID BETWEEN " & RNumber & " AND " & RNumber & "+ 9"
注意:以上代码的执行目的不是检查数据库内是否有9条并发记录。
随机读取若干条记录,测试过
Access语法:Select top 10 * From 表名 orDER BY Rnd(id)
Sql server:select top n * from 表名 order by newid()
mysqlelect * From 表名 order By rand() Limit n
Access左连接语法(最近开发要用左连接,Access帮助什么都没有,网上没有Access的SQL说明,只有自己测试, 现在记下以备后查)
语法elect table1.fd1,table1,fd2,table2.fd2 From table1 left join table2 on table1.fd1,table2.fd1 where ...
使用SQL语句 用...代替过长的字符串显示
语法:
SQL数据库:select case when len(field)>10 then left(field,10)+'...' else field end as news_name,news_id from tablename
Access数据库:Select iif(len(field)>2,left(field,2)+'...',field) FROM tablename;
Conn.Execute说明
Execute方法
该方法用于执行SQL语句。根据SQL语句执行后是否返回记录集,该方法的使用格式分为以下两种:
1.执行SQL查询语句时,将返回查询得到的记录集。用法为:
Set 对象变量名=连接对象.Execute("SQL 查询语言")
Execute方法调用后,会自动创建记录集对象,并将查询结果存储在该记录对象中,通过Set方法,将记录集赋给指定的对象保存,以后对象变量就代表了该记录集对象。
2.执行SQL的操作性语言时,没有记录集的返回。此时用法为:
连接对象.Execute "SQL 操作性语句" [, RecordAffected][, Option]
・RecordAffected 为可选项,此出可放置一个变量,SQL语句执行后,所生效的记录数会自动保存到该变量中。通过访问该变量,就可知道SQL语句队多少条记录进行了操作。
・Option 可选项,该参数的取值通常为adCMDText,它用于告诉ADO,应该将Execute方法之后的第一个字符解释为命令文本。通过指定该参数,可使执行更高效。
2008/12/10
重定向(redirect)
重定向(redirect)――一个对浏览器的指导,让其显示不同的URL而不是当初浏览器所请求的。重定向允许旧的URL被重新指向到目前的URL上,因此当访客使用旧的URL时,不会得到一个"网页没有被找到"的消息(就是通常大家知道的HTTP404错误)。 1. Meta 更新重定向(Meta Refresh redirects) HTML在<head>部分的meta标签页可以重新链接一个网页――通常被称为"meta"更新重定向例如: <meta http-equiv="refresh" content="10; url=http://www.doumiao.net"> 其中的"10"是告诉浏览器在页面加载10秒钟后自动跳转到doumiao.net。 这种方法常在论坛中见到。如果在论坛上发表帖子,先会看到一个确认页面,几秒后会自动重新跳转回当前的论坛页面中。 从搜索引擎优化的角度出发,一般不希望自动转向有延迟。不过,如果是用Meta Refresh标识进行转向,一定要注意把延迟时间设定成至少10秒以上。对于这种自动转向法,搜索引擎能够自动检测出来。因而无论网站的转向出于什么目的,都很容易被搜索引擎视为对读者的误导而受到惩罚。不过,如果跳转延迟时间设置合适,搜索引擎就不会视之为作弊。 2. JavaScript重定向 JavaScript自动重定向脚本可以放在网页的任何位置上,如果要求立即跳转,则可以将其放入网页源码的<head>区内的最上面。例如: <script language="javascript">location.replace("http://www.google.com")</script> 用JavaScript实现自动重定向的好处在于:用户所访问的目标URL不会保留在用户浏览器的历史记录中,如果用户按返回按钮返回,则将回到跳转前的网页,而不是包含JavaScript自动重定向脚本的跳转页面,所以不会出现当用户点击返回按钮后返回至重定向页,然后该页自动跳转到用户本来想离开的那个页面的尴尬情形。 由于不能解析javascript,所以搜索引擎无法察觉(自动检测到)用JavaScript脚本进行的自动转向。所以这种技术还经常被搜索的作弊者使用,他们可以让搜索蜘蛛索引旧的页面而让搜索者到新的URL网页(新旧页面内容完全不同)。 这种重定向不会让蜘蛛程序爬到你的新URL,并且他们不会使你的新URL被收录。 3. 301重定向 也称为永久重定向(permanent redirect),是一种对网站浏览器的指令,来显示浏览器被要求显示的不同的URL,当一个网页经历过其URL的最后一次变化以后时使用。一个永久重定向是一种服务器端的重定向,能够被搜索引擎蜘蛛正确的处理。 301重定向可促进搜索引擎优化效果,从搜索引擎优化角度出发,301重定向是网址重定向中最为可行的一种办法。搜索引擎蜘蛛程序会按照你的意愿,使用301重定向所提供的新的URL来找到并爬过新的网页。它会索引页面上的所有内容,并会把新的URL收录到索引库中,因此所有带出那个网页的搜索引擎会引导搜索者到新的URL上,而不是旧的。当蜘蛛程序看到一个301重定向,它也会更新索引库中所有的链接信息,因此所有旧的URL下你网页的所有链接价值被转移到新的URL上。
4. 302重定向 也被认为是暂时重定向(temporary redirect),一条对网站浏览器的指令来显示浏览器被要求显示的不同的URL,当一个网页经历过短期的URL变化时使用。只有当一个网站或网页在24到48小时之内临时移到其它位置的情况下才能使用该命令。 迄今为止,能够对302重定向具备优异处理能力的只有Google。也就是说,在网站使用302重定向命令将其它域名指向主域名时,只有Google会把其它域名的链接成绩计入主域,而其它搜索引擎只会把链接成绩向多个域名分摊,从而削弱主站的链接总量。既然作为网站排名关键因素之一的外链数量受到了影响,网站排名降低也是很自然的事情了。
综上所述,在众多重定向技术中,301永久性重定向是最为安全的一种途径,也是极为理想的一款解决方案。
网页编程中各种注释的写法
单行:<!-- -->
多行:<!-- -->
javascript
单行://
多行:/* */
Vbscript
单行:'
多行:'
ASP <% %>中:
单行:'
多行:'
2008/12/08
部署ePO Agent时出错的解决办法
2008/12/02
DIV+CSS和TABLE
表格其实和 div+css 一样优秀。
所谓的"浏览快慢"其实是在带宽有限的情况下,由于需要等待载入时间,而表现出的快慢。
表格的特性是:只有在表格体内的内容全部载入完后,才一次性显示该表格。因为,当表格内容很多时,容易出现"载入慢"的情况。这在设计的时候尽量避免就可以了。
div+css的特性是:载入一点就显示一点,因此有"载入快"的说法。但在一些简单的应用上时,div+css的代码比表格多,其实代码量上去了,反而"载入慢"了。
所以,并不是完全用div+css就完美了,主要是根据实用准则。
建议:主要使用在div+css来避免大容量表格的出现,在一些细节处理上,有时候用表格来得简单有效。一些比较成熟的大网站都是如此。
再论DIV+CSS
虽然目前在公司相当忙,但是仍然有必要讨论一下div+css的问题。因为它已经不再是两年前那个新鲜的名词了。它正逐渐步入广大低端Web开发、设计人员的视野。它的好、他的坏,已经逐渐开始成为前台开发工程师争论的焦点。
今天偶然看到"一个有将近两年的Div + CSS 开发经验和历史,曾经是Web标准绝对拥趸的同志"在自己的blog上发表放弃div+css的申明。我更深感一种悲哀――特别是当我苦口婆心地劝说公司的前台开发人员开始学习DIV+CSS的时候。
不过看看这个"好同志"放弃的理由的其中两条,不禁让我所心冷。
引用
# 公司领导及客户不关心这个,他们需要的是快速、高效的工作和花哨的页面;
# 所费功夫与收入不成正比,利用table可以大大减少工作量;
确实,当今市场环境下,div+css对于一个财力一般的公司是一种奢侈。尤其是对于那种靠业务员疯狂跑业务而存活的(不打算上市)的公司,是一种莫大的浪费。我在广州曾见过许多"三天建站"的公司其中90%的人在外跑业务,然后10%的垃圾web开发设计人员把代码一遍一遍的往table里面塞。
甚至可以这么说,一个公司对div+css的认同和投入,直接决定了这个公司的期望目标,比如上市。好在我现在所在的公司在这一点上是非常愿意付出代价的。
其实,在具体商业产品实现上,并非一定要把自己拘泥于"Web标准绝对拥趸"的角色。我们似乎应该静心思考为什么使用div+css,而不是如何实现某个细节。
我们公司面临的困境则是相反的。就是太拘泥于div+css、为了DIV+CSS而DIV+CSS。这样做是毫无意义的。如果为了实现一个效果而不顾策略强行使用一种技术,是非常失败的一种做法。当然,我觉得这需要设计人员与开发人员的共同努力和让步。尤其是在B/S架构下。设计者肯定要做出更多的让步。比如某个布局中1px的差距能节省3k的HTML文件size,哪怕放弃视觉上这1px的效果,我看都值得。更何况,大多数干扰DIV+CSS布局的设计本身也是极不美观的。
DIV+CSS为什么好?
by aw(awflasher.com) 转载请注明出处 - http://www.awflasher.com/blog/id=583
公司的web实力确实比较弱,当然,公司有很强大的地层开发能力和运营能力,这是值得我骄傲和放心的!
三天以来,关于movivi.com的SEO我思考了很多。我觉得最大的问题就出在我们并没有足够吃透W3C上。
当时,当w3c刚出的时候,三大门户十分不屑。清一色的table遍布整个首页。可是这样导致的问题不久就暴露出来了。搜索引擎爬虫难以解析复杂的table,而样式的改版也极为难受。
div+css,这个布局中,div承载的是内容,而css承载的是样式。内容和样式的分离对于所见即所得的传统table编辑方式确实是一个很大的冲击,尤其是设计人员很难接受设计一个他们不能立即看到的样式。不过div+css的好处实在是太明显了:
1、搜索引擎亲和力:搜索引擎不会在意一个页面的设计或者构成。搜索引擎不可能"欣赏"设计漂亮新颖的页面;也不会去"排斥"颜色搭配丑陋的页面。它们只是默默地拿到它们需要的内容就离开。如果一个页面中涵盖了大量的table来描述构架,试想搜索引擎要花多大的代价才可以拿到真正有用的信息呢?
凭我自己的经验,一般来说,table构架描述的页面,样式结构和内容信息大小比可能达到1:1甚至更高。而CSS+DIV构架的页面,虽然在客户端看来下载一个复杂的CSS 也要占用差不多的带宽,然而搜索引擎可以很方便的绕过这个css,而直接抓去div中的内容。这便是div的优势所在。带宽的稍多占用,完全显得微不足道,更何况一个冗余的table设计架构如果代码写的不好会占用更多的带宽。
2、重构页面的方便性。
这个应用最经典的例子就是各大blog程序了。就如现在我用的LBS系统,以及流行的PJBLOG、php下面的WP、MT,都是采用div+css构架。内容和样式的分离导致我们在重构页面布局(更换皮肤)的时候,只用针对每一个div元素重新定义其具体位置、样式就行了。而在原来的table基础上进行改版,几乎必须改变所有的内容注入渠道,实在是太过于麻烦.
关于韩国风格网站难用div描述的问题,我个人认为在web2.0的大军冲击下,韩国的花哨流派很快会被简约派所代替。如果确实是优秀的设计,我个人认为用Flash来完成更好!
javascript实现电信网通双线自动选择
<img src="http://www.a.com/direct" width="1" height="1" onerror="Javascript:top.location='http://www.a.com'">
<img src="http://cnc.a.com/direct" width="1" height="1" onerror="Javascript:top.location='http://cnc.a.com'">
src里边放的是一个不存在的地址,这样2个img打开的时候都会出错,都会触发onerror事件,但是你的浏览器对这2个img加载、判断出错有个先后顺序,而这个先后顺序取决于你的浏览器去连2个url的快慢程度,这就表现为http请求两个域名的快慢。