<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_陈宝刚---享受生活,追逐梦想!</title><subtitle type="text">理想是心中的火焰,有追求的人才是幸福的人!</subtitle><id>http://feed.cnblogs.com/blog/u/47973/rss</id><updated>2012-03-31T08:55:45Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/47973/rss"/><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2405041.html</id><title type="text">MS SQL SERVER 存储过程事务的实现方式</title><summary type="text">MS SQL SERVER 存储过程事务的实现方式目前找到两种实现方式: 1, 使用事务的存储过程使用特殊命名, 如UP_ProductAdd_Tran, 内部只需一对事务语句即可管理所有牵涉到业务的其他过程; 其他未使用此种方式命名的过程, 内部不能使用事务相关语句, 只需输出成功失败. 这种方式的好处是容易理解, 你只需要专心业务上的代码, 意外的时候返回错误, 在最外层直接回滚即可...缺点是你可能会产生很多_Tran命名的存储过程, 不好维护.UP_TestProcedure_Tran Code highlighting produced by Actipro CodeHighlig.</summary><published>2012-03-18T12:30:00Z</published><updated>2012-03-18T12:30:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2405041.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2405041.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&lt;p&gt;MS SQL SERVER 存储过程事务的实现方式&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;目前找到两种实现方式:&lt;/p&gt;&lt;p&gt;1, 使用事务的存储过程使用特殊命名, 如UP_ProductAdd_Tran, 内部只需一对事务语句即可管理所有牵涉到业务的其他过程; 其他未使用此种方式命名的过程, 内部不能使用事务相关语句, 只需输出成功失败. 这种方式的好处是容易理解, 你只需要专心业务上的代码, 意外的时候返回错误, 在最外层直接回滚即可...缺点是你可能会产生很多_Tran命名的存储过程, 不好维护.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('2f6a229a-9581-4d58-8bba-16fdf0f55f28')"&gt;&lt;img class="code_img_closed" id="code_img_closed_2f6a229a-9581-4d58-8bba-16fdf0f55f28" src="http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif"  alt="" /&gt;&lt;img class="code_img_opened" id="code_img_opened_2f6a229a-9581-4d58-8bba-16fdf0f55f28" style="display: none" onclick="cnblogs_code_hide('2f6a229a-9581-4d58-8bba-16fdf0f55f28',event)" src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"&gt; &lt;div class="cnblogs_code_hide" id="cnblogs_code_open_2f6a229a-9581-4d58-8bba-16fdf0f55f28"&gt;&lt;div&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br /&gt;http://www.CodeHighlighter.com/&lt;br /&gt;&lt;br /&gt;--&gt;&lt;span style="color: #008080"&gt; 1&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 2&lt;/span&gt; &lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;CREATE&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;PROCEDURE&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;dbo&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;.&lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;UP_TestProcedure_Tran&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 3&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;nvarchar&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;255&lt;/span&gt;&lt;span style="color: #000000"&gt;) output    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 输出信息&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 4&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 其他参数&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 5&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 6&lt;/span&gt; &lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;AS&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 7&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt; NOCOUNT &lt;/span&gt;&lt;span style="color: #0000ff"&gt;OFF&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 8&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt;-------------------------------------------------------------------------&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 9&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;10&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;OK&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;11&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;12&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 事务控制开始&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;13&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Tran&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;14&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt;-------------------------------------------------------------------------&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;15&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;exec&lt;/span&gt;&lt;span style="color: #000000"&gt;  &lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;UP_TestProcedure&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;16&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; output    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 输出信息&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;17&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 其他参数&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;18&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;        ;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;19&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;20&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;21&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;22&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;10&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;23&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;----------&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;24&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;goto&lt;/span&gt;&lt;span style="color: #000000"&gt; TranLabel;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;25&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;26&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;27&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt;-------------------------------------------------------------------------&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;28&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 事务控制结束(提交或回滚)&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;29&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    TranLabel:&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;30&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;and&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #008000"&gt;@@TRANCOUNT&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;31&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;32&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;RollBack&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Tran&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;33&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;34&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;and&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #008000"&gt;@@TRANCOUNT&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;35&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;36&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;commit&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Tran&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;37&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;38&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;39&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@CurrentError&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;40&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;41&lt;/span&gt; &lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;2, 使用嵌套方式, 实现稍微麻烦, 接受一个事务计数变量, 以维护与调用者的同步, 完成时根据计数决定提交还是回滚, 代码如下:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;" onclick="cnblogs_code_show('3faacc17-757f-4501-ae1d-93abbe01160d')"&gt;&lt;img class="code_img_closed" id="code_img_closed_3faacc17-757f-4501-ae1d-93abbe01160d" src="http://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif"  alt="" /&gt;&lt;img class="code_img_opened" id="code_img_opened_3faacc17-757f-4501-ae1d-93abbe01160d" style="display: none" onclick="cnblogs_code_hide('3faacc17-757f-4501-ae1d-93abbe01160d',event)" src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"&gt; &lt;div class="cnblogs_code_hide" id="cnblogs_code_open_3faacc17-757f-4501-ae1d-93abbe01160d"&gt;&lt;div&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br /&gt;http://www.CodeHighlighter.com/&lt;br /&gt;&lt;br /&gt;--&gt;&lt;span style="color: #008080"&gt; 1&lt;/span&gt; &lt;span style="color: #0000ff"&gt;CREATE&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;PROCEDURE&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;dbo&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;.&lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;UP_TestTransaction&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 2&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt; output,    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 输出信息&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 3&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;nvarchar&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;255&lt;/span&gt;&lt;span style="color: #000000"&gt;) output    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 输出信息&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 4&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 其他字段&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 5&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 其他字段 &lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 6&lt;/span&gt; &lt;span style="color: #008080"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;AS&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 7&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; declare @LocalTranCount  int;&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 8&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; set @LocalTranCount  = 0;&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt; 9&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 将 @LocalTranCount 定义为输入输出参数&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;10&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 将 @LocalTranCount 定义为输入输出参数&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;11&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 当该存储过程被其他存储过程调用时&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;12&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt; 传入当前的事务计数&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;13&lt;/span&gt; &lt;span style="color: #008080"&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;14&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;declare&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ErrorCode&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;15&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ErrorCode&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;16&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;17&lt;/span&gt; &lt;span style="color: #000000"&gt;    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;18&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt;  &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;19&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;20&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;21&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt;  &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;22&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;insert&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;into&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;tbCar&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt; (&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;23&lt;/span&gt; &lt;span style="color: #000000"&gt;                    CarCode,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;24&lt;/span&gt; &lt;span style="color: #000000"&gt;                    CarHongKongCode,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;25&lt;/span&gt; &lt;span style="color: #000000"&gt;                    NormalDriver,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;26&lt;/span&gt; &lt;span style="color: #000000"&gt;                    NormalDriverTel,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;27&lt;/span&gt; &lt;span style="color: #000000"&gt;                    BelongDepartmentId,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;28&lt;/span&gt; &lt;span style="color: #000000"&gt;                    BelongDepartment,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;29&lt;/span&gt; &lt;span style="color: #000000"&gt;                    CreateByUserId,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;30&lt;/span&gt; &lt;span style="color: #000000"&gt;                    CreateByUser&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;31&lt;/span&gt; &lt;span style="color: #000000"&gt;                ) &lt;/span&gt;&lt;span style="color: #0000ff"&gt;values&lt;/span&gt;&lt;span style="color: #000000"&gt; (&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;32&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;------&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;33&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;5555555555&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;34&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;6666666666&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;35&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;77777777&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;36&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;37&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;uuuuuuu&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;38&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;39&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;bbbbbbb&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;40&lt;/span&gt; &lt;span style="color: #000000"&gt;                )&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;41&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;42&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;43&lt;/span&gt; &lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ErrorCode&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;10&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;44&lt;/span&gt; &lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;---------&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;45&lt;/span&gt; &lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #0000ff"&gt;goto&lt;/span&gt;&lt;span style="color: #000000"&gt; ErrorLabel;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;46&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;47&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;48&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;49&lt;/span&gt; &lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt;  &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;50&lt;/span&gt; &lt;span style="color: #000000"&gt;                &lt;/span&gt;&lt;span style="color: #0000ff"&gt;insert&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;into&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;tbCar&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt; (&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;51&lt;/span&gt; &lt;span style="color: #000000"&gt;                        CarCode,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;52&lt;/span&gt; &lt;span style="color: #000000"&gt;                        CarHongKongCode,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;53&lt;/span&gt; &lt;span style="color: #000000"&gt;                        NormalDriver,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;54&lt;/span&gt; &lt;span style="color: #000000"&gt;                        NormalDriverTel,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;55&lt;/span&gt; &lt;span style="color: #000000"&gt;                        BelongDepartmentId,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;56&lt;/span&gt; &lt;span style="color: #000000"&gt;                        BelongDepartment,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;57&lt;/span&gt; &lt;span style="color: #000000"&gt;                        CreateByUserId,&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;58&lt;/span&gt; &lt;span style="color: #000000"&gt;                        CreateByUser&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;59&lt;/span&gt; &lt;span style="color: #000000"&gt;                    ) &lt;/span&gt;&lt;span style="color: #0000ff"&gt;values&lt;/span&gt;&lt;span style="color: #000000"&gt; (&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;60&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;--4353---&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;61&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;5555555555&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;62&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;6666666666&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;63&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;77777777&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;64&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;65&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;uuuuuuu&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;66&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;, &lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;67&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;bbbbbbb&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;68&lt;/span&gt; &lt;span style="color: #000000"&gt;                    )&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;69&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;70&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;begin&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;71&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ErrorCode&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;20&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;72&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ResultMessage&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;---------&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;73&lt;/span&gt; &lt;span style="color: #000000"&gt;                        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;goto&lt;/span&gt;&lt;span style="color: #000000"&gt; ErrorLabel;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;74&lt;/span&gt; &lt;span style="color: #000000"&gt;                    &lt;/span&gt;&lt;span style="color: #0000ff"&gt;end&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;75&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;commit&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;76&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;commit&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;77&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;78&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;79&lt;/span&gt; &lt;span style="color: #000000"&gt;    ErrorLabel:&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;80&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;IF&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #008000"&gt;@@TranCount&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@LocalTranCount&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;81&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;RollBack&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;82&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Else&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;83&lt;/span&gt; &lt;span style="color: #000000"&gt;            &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Commit&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #0000ff"&gt;Transaction&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;84&lt;/span&gt; &lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008080"&gt;85&lt;/span&gt; &lt;span style="color: #000000"&gt;        &lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt; &lt;/span&gt;&lt;span style="color: #008000"&gt;@ErrorCode&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;参考资料:&lt;/p&gt;&lt;p&gt;http://www.cnblogs.com/montaque/archive/2005/03/12/117410.html 第一页评论&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;虽然只有几个字, 但是写的时候还是感觉到文字不行..好像说不清楚 ~!@#$%^&amp;amp;*&lt;/p&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;if ($ != jQuery) {$ = jQuery.noConflict();}var isLogined = true;var cb_blogId = 70346;var cb_entryId = 1769441;var cb_blogApp = "ascrat";var cb_blogUserGuid = "61a1e1ae-9659-df11-ba8f-001cf0cd104b";var cb_entryCreatedDate = '2010/7/1 19:38:00';&lt;/script&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2405041.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2405041.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2404982.html</id><title type="text">ASP如何调用存储过程(转)</title><summary type="text">1.ASP调用存储过程首先在SQL里建立一个数据库叫it，怎么建我就不说了，这个简单，一看就知道了。然后在库里建个表，写几个数据记录，如下：打开查询分析器：在里边写下如下语句点击绿色按钮执行它：你到数据库的存储过程里面看，已经多了一个名为upGetUserName的存储过程了表明已经成功的建立了存储过程，如果没有，试着刷新下。下面用ASP来调用它：CONN文件（连接数据库）如下：&lt;%set db=server.createobject("adodb.connection")db.Open ("driver={SQL Server};server=192.16</summary><published>2012-03-18T11:36:00Z</published><updated>2012-03-18T11:36:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2404982.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2404982.html"/><content type="html">&lt;p&gt;1.ASP调用存储过程&lt;/p&gt;&lt;p&gt;首先在SQL里建立一个数据库叫it，怎么建我就不说了，这个简单，一看就知道了。然后在库里建个表，写几个数据记录，如下：&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/01_s.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/02_s.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;打开查询分析器：&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/03.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;在里边写下如下语句点击绿色按钮执行它：&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/04.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;你到数据库的存储过程里面看，已经多了一个名为upGetUserName的存储过程了表明已经成功的建立了存储过程，如果没有，试着刷新下。&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/05.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;下面用ASP来调用它：&lt;/p&gt;&lt;p&gt;CONN文件（连接数据库）如下：&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set db=server.createobject("adodb.connection")&lt;/p&gt;&lt;p&gt;db.Open ("driver={SQL Server};server=192.168.18.254;uid=sa;pwd=;database=it;")&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;192.168.18.254为SQL SERVER服务器的IP地址，uid pwd it 分别为连接数据库的用户和密码及所要连的数据库&lt;/p&gt;&lt;p&gt;新建一个index.asp文件，内容如下：&lt;/p&gt;&lt;p&gt;&amp;lt;!--#include file="conn.asp" --&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set rs=server.createobject("adodb.recordset")&lt;/p&gt;&lt;p&gt;sql = "exec upGetUserName"&lt;/p&gt;&lt;p&gt;rs.open sql,db,3,2&lt;/p&gt;&lt;p&gt;response.write rs.recordcount&amp;amp;"&amp;lt;br&amp;gt;"&lt;/p&gt;&lt;p&gt;while not rs.eof&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.write rs("uname")&amp;amp;"&amp;lt;br&amp;gt;"&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rs.movenext&lt;/p&gt;&lt;p&gt;wend&lt;/p&gt;&lt;p&gt;response.End&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;在浏览器中执行这个页面如果显示如下：&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/06.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;那么恭喜你，成功了！&lt;/p&gt;&lt;p&gt;上面是不带参数的存储过程调用，但我们在使用中一定会有参数的，下面就来介绍一个有参数的。&lt;/p&gt;&lt;p&gt;还是上边的例子，我们把原来的存储过程改成这样：&lt;/p&gt;&lt;p&gt;CREATE PROC upGetUserName&lt;/p&gt;&lt;p&gt;@intUserId&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NVARCHAR(50),&lt;/p&gt;&lt;p&gt;@intUserpass&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; NVARCHAR(50)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;AS&lt;/p&gt;&lt;p&gt;BEGIN&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; SELECT uname FROM users WHERE uId=@intUserId and pass=@intUserpass&lt;/p&gt;&lt;p&gt;END&lt;/p&gt;&lt;p&gt;GO&lt;/p&gt;&lt;p&gt;可以把原来的存储过程删除，然后把这个写在查询分析器里来执行，也可以直接在原来的存储过程里改。&lt;/p&gt;&lt;p&gt;@intUserId NVARCHAR(50),&lt;/p&gt;&lt;p&gt;@intUserpass NVARCHAR(50)&lt;/p&gt;&lt;p&gt;是要传送进来的参数，@是必须的,因为有两个，所以之间用&amp;#8220;，&amp;#8221;来分隔&lt;/p&gt;&lt;p&gt;index文件改成如下：&lt;/p&gt;&lt;p&gt;&amp;lt;!--#include file="conn.asp" --&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set rs=server.createobject("adodb.recordset")&lt;/p&gt;&lt;p&gt;sql = "exec upGetUserName 'snake','snake'"&lt;/p&gt;&lt;p&gt;rs.open sql,db,3,2&lt;/p&gt;&lt;p&gt;response.write rs.recordcount&amp;amp;"&amp;lt;br&amp;gt;"&lt;/p&gt;&lt;p&gt;while not rs.eof&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; response.write rs("uname")&amp;amp;"&amp;lt;br&amp;gt;"&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rs.movenext&lt;/p&gt;&lt;p&gt;wend&lt;/p&gt;&lt;p&gt;response.End&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;注意：sql = "exec upGetUserName 'snake','snake'"&lt;/p&gt;&lt;p&gt;两个snake不是一个意思，一个是uid，一个是pass,存储过程返回的是uid="snake"并且pass="snake"的记录&lt;/p&gt;&lt;p&gt;数据库里只有一条这样的记录，所以会显示：&lt;/p&gt;&lt;p&gt;&lt;img title="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" alt="ASP调用存储过程  - jinhui_email@126 - 帝S-Bingyu" src="http://www.blueidea.com/articleimg/2006/08/3972/07.jpg" border="0" /&gt;&lt;/p&gt;&lt;p&gt;ASP存储过程使用大全&lt;/p&gt;&lt;p&gt;1，调用没有参数的存储过程&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set conn=server.CreateObject("adodb.connection")&lt;/p&gt;&lt;p&gt;set cmd=server.CreateObject("adodb.command")&lt;/p&gt;&lt;p&gt;strconn="dsn=pubs;uid=sa;pwd"&lt;/p&gt;&lt;p&gt;conn.Open strconn&lt;/p&gt;&lt;p&gt;set cmd.ActiveConnection=conn&lt;/p&gt;&lt;p&gt;cmd.CommandText="{call nono}"&lt;/p&gt;&lt;p&gt;'set rs=cmc.exe 或者cmd.execute&lt;/p&gt;&lt;p&gt;set rs=cmd.Execute()&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;2，一个输入的参数的存储过程&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set conn=server.CreateObject("adodb.connection")&lt;/p&gt;&lt;p&gt;set cmd=server.CreateObject("adodb.command")&lt;/p&gt;&lt;p&gt;strconn="dsn=pubs;uid=sa;pwd"&lt;/p&gt;&lt;p&gt;conn.Open strconn&lt;/p&gt;&lt;p&gt;set cmd.ActiveConnection=conn&lt;/p&gt;&lt;p&gt;cmd.CommandText="{call oneinput(?)}"&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger ,adParamInput )&lt;/p&gt;&lt;p&gt;cmd("@aaa")=100&lt;/p&gt;&lt;p&gt;cmd.Execute()&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;3，一个输入参数和一个输出的参数&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set conn=server.CreateObject("adodb.connection")&lt;/p&gt;&lt;p&gt;set cmd=server.CreateObject("adodb.command")&lt;/p&gt;&lt;p&gt;strconn="dsn=pubs;uid=sa;pwd"&lt;/p&gt;&lt;p&gt;conn.Open strconn&lt;/p&gt;&lt;p&gt;set cmd.ActiveConnection=conn&lt;/p&gt;&lt;p&gt;cmd.CommandText = "{call oneinout(?,?)}"&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput)&lt;/p&gt;&lt;p&gt;cmd("@aaa")=10&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)&lt;/p&gt;&lt;p&gt;cmd.Execute()&lt;/p&gt;&lt;p&gt;bbb=cmd("@bbb")&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;4，一个输入参数，一个输出参数，和一个返回值&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;set conn=server.CreateObject("adodb.connection")&lt;/p&gt;&lt;p&gt;set cmd=server.CreateObject("adodb.command")&lt;/p&gt;&lt;p&gt;strconn="dsn=pubs;uid=sa;pwd"&lt;/p&gt;&lt;p&gt;conn.Open strconn&lt;/p&gt;&lt;p&gt;set cmd.ActiveConnection=conn&lt;/p&gt;&lt;p&gt;cmd.CommandText="{?=call onereturn(?,?)}"&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@return_value",adInteger,adParamReturnValue )&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@aaa",adInteger,adParamInput )&lt;/p&gt;&lt;p&gt;cmd("@aaa")=10&lt;/p&gt;&lt;p&gt;cmd.Parameters.Append cmd.CreateParameter("@bbb",adInteger,adParamOutput)&lt;/p&gt;&lt;p&gt;cmd.Execute()&lt;/p&gt;&lt;p&gt;bbb=cmd("@bbb")&lt;/p&gt;&lt;p&gt;rrr=cmd("@return_value")&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;如何在ASP中调用SQL存储过程&lt;/p&gt;&lt;p&gt;&amp;lt;%set connection1 = Server.CreateObject("ADODB.Connection")&lt;/p&gt;&lt;p&gt;connection1.open ... '联接&lt;/p&gt;&lt;p&gt;set command1=Server.CreateObject("ADODB.command")&lt;/p&gt;&lt;p&gt;set command1.activeconnection=connection1&lt;/p&gt;&lt;p&gt;command1.commandtype=4&lt;/p&gt;&lt;p&gt;command1.commandtext="sp_1" 'SP 名&lt;/p&gt;&lt;p&gt;command1.parameters(1)=... '参数值&lt;/p&gt;&lt;p&gt;command1.parameters(2)=...&lt;/p&gt;&lt;p&gt;set recordset1=command1.execute()&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;ASP调用存储过程的技巧&lt;/p&gt;&lt;p&gt;1、最简单的如下&lt;/p&gt;&lt;p&gt;Dim objConn&lt;/p&gt;&lt;p&gt;Set objConn = Server.CreateObject("ADOBD.Connection")&lt;/p&gt;&lt;p&gt;objConn.Open Application("Connection_String")&lt;/p&gt;&lt;p&gt;'Call the stored procedure to increment a counter on the page&lt;/p&gt;&lt;p&gt;objConn.Execute "exec sp_AddHit"&lt;/p&gt;&lt;p&gt;没有参数，没有返回，没有错误处理，就是这个了&lt;/p&gt;&lt;p&gt;2、带参数的一种调用&lt;/p&gt;&lt;p&gt;objConn.Execute "exec sp_AddHit 'http://www.aspalliance.com', 1"&lt;/p&gt;&lt;p&gt;请注意分割参数，该方法也不返回记录&lt;/p&gt;&lt;p&gt;3、返回记录的&lt;/p&gt;&lt;p&gt;Dim objConn&lt;/p&gt;&lt;p&gt;Dim objRs&lt;/p&gt;&lt;p&gt;Set objConn = Server.CreateObject("ADOBD.Connection")&lt;/p&gt;&lt;p&gt;Set objRs = Server.CreateObject("ADOBD.Recordset")&lt;/p&gt;&lt;p&gt;objConn.Open Application("Connection_String")&lt;/p&gt;&lt;p&gt;'Call the stored procedure to increment a counter on the page&lt;/p&gt;&lt;p&gt;objRs.Open objConn, "exec sp_ListArticles '1/15/2001'"&lt;/p&gt;&lt;p&gt;'Loop through recordset and display each article&lt;/p&gt;&lt;p&gt;4、&amp;#8230;&amp;#8230;&lt;/p&gt;&lt;p&gt;Dim objConn&lt;/p&gt;&lt;p&gt;Dim objCmd&lt;/p&gt;&lt;p&gt;'Instantiate objects&lt;/p&gt;&lt;p&gt;Set objConn = Server.CreateObject("ADODB.Connection")&lt;/p&gt;&lt;p&gt;set objCmd = Server.CreateObject("ADODB.Command")&lt;/p&gt;&lt;p&gt;conn.Open Application("ConnectionString")&lt;/p&gt;&lt;p&gt;With objCmd&lt;/p&gt;&lt;p&gt;.ActiveConnection = conn 'You can also just specify a connection string here&lt;/p&gt;&lt;p&gt;.CommandText = "sp_InsertArticle"&lt;/p&gt;&lt;p&gt;.CommandType = adCmdStoredProc 'Requires the adovbs.inc file or typelib meta tag&lt;/p&gt;&lt;p&gt;'Add Input Parameters&lt;/p&gt;&lt;p&gt;.Parameters.Append .CreateParameter("@columnist_id", adDouble, adParamInput, , columnist_id)&lt;/p&gt;&lt;p&gt;.Parameters.Append .CreateParameter("@url", adVarChar, adParamInput, 255, url)&lt;/p&gt;&lt;p&gt;.Parameters.Append .CreateParameter("@title", adVarChar, adParamInput, 99, url)&lt;/p&gt;&lt;p&gt;.Parameters.Append .CreateParameter("@description", adLongVarChar, _&lt;/p&gt;&lt;p&gt;adParamInput, 2147483647, description)&lt;/p&gt;&lt;p&gt;'Add Output Parameters&lt;/p&gt;&lt;p&gt;.Parameters.Append .CreateParameter("@link_id", adInteger, adParamOutput, , 0)&lt;/p&gt;&lt;p&gt;'Execute the function&lt;/p&gt;&lt;p&gt;'If not returning a recordset, use the adExecuteNoRecords parameter option&lt;/p&gt;&lt;p&gt;.Execute, , adExecuteNoRecords&lt;/p&gt;&lt;p&gt;link_id = .Parameters("@link_id")&lt;/p&gt;&lt;p&gt;End With&lt;/p&gt;&lt;p&gt;5、存储过程的代码&lt;/p&gt;&lt;p&gt;Create PROCEDURE dbo.sp_InsertArticle&lt;/p&gt;&lt;p&gt;(&lt;/p&gt;&lt;p&gt;@columnist_id int,&lt;/p&gt;&lt;p&gt;@url varchar(255),&lt;/p&gt;&lt;p&gt;@title varchar(99),&lt;/p&gt;&lt;p&gt;@description text&lt;/p&gt;&lt;p&gt;@link_id int OUTPUT&lt;/p&gt;&lt;p&gt;)&lt;/p&gt;&lt;p&gt;AS&lt;/p&gt;&lt;p&gt;BEGIN&lt;/p&gt;&lt;p&gt;INSERT INTO dbo.t_link (columnist_id,url,title,description)&lt;/p&gt;&lt;p&gt;VALUES (@columnist_id,@url,@title,@description)&lt;/p&gt;&lt;p&gt;SELECT @link_id = @@IDENTITY&lt;/p&gt;&lt;p&gt;END&lt;/p&gt;&lt;p&gt;ASP调用带参数存储过程的几种方式&lt;/p&gt;&lt;p&gt;最近有很多的朋友问到调用存储过程的问题，这里简单介绍几种ASP调用带参数存储过程的方法。&lt;/p&gt;&lt;p&gt;1 这也是最简单的方法,两个输入参数，无返回值：&lt;/p&gt;&lt;p&gt;set connection = server.createobject("adodb.connection")&lt;/p&gt;&lt;p&gt;connection.open someDSN&lt;/p&gt;&lt;p&gt;Connection.Execute "procname varvalue1, varvalue2"&lt;/p&gt;&lt;p&gt;''将所有对象清为nothing，释放资源&lt;/p&gt;&lt;p&gt;connection.close&lt;/p&gt;&lt;p&gt;set connection = nothing&lt;/p&gt;&lt;p&gt;2 如果要返回 Recordset 集:&lt;/p&gt;&lt;p&gt;set connection = server.createobject("adodb.connection")&lt;/p&gt;&lt;p&gt;connection.open someDSN&lt;/p&gt;&lt;p&gt;set rs = server.createobject("adodb.recordset")&lt;/p&gt;&lt;p&gt;rs.Open "Exec procname varvalue1, varvalue2",connection&lt;/p&gt;&lt;p&gt;''将所有对象清为nothing，释放资源&lt;/p&gt;&lt;p&gt;rs.close&lt;/p&gt;&lt;p&gt;connection.close&lt;/p&gt;&lt;p&gt;set rs = nothing&lt;/p&gt;&lt;p&gt;set connection = nothing&lt;/p&gt;&lt;p&gt;3 以上两种方法都不能有返回值，（Recordset除外），如果要得到返回值，需要用Command的方法。&lt;/p&gt;&lt;p&gt;首先说明，返回值有两种。一种是在存储过程中直接return一个值，就象C和VB的函数返回值那样；另一种是可以返回多个值，存&lt;/p&gt;&lt;p&gt;储这些值的变量名称需要在调用参数中先行指定。&lt;/p&gt;&lt;p&gt;这个例子要处理多种参数，输入参数，输出参数，返回记录集以及一个直接返回值（够全了吧？）&lt;/p&gt;&lt;p&gt;存储过程如下：&lt;/p&gt;&lt;p&gt;use pubs&lt;/p&gt;&lt;p&gt;GO&lt;/p&gt;&lt;p&gt;-- 建立存储过程&lt;/p&gt;&lt;p&gt;create procedure sp_PubsTest&lt;/p&gt;&lt;p&gt;-- 定义三个参数变量，注意第三个，特别标记是用于输出&lt;/p&gt;&lt;p&gt;@au_lname varchar (20),&lt;/p&gt;&lt;p&gt;@intID int,&lt;/p&gt;&lt;p&gt;@intIDOut int OUTPUT&lt;/p&gt;&lt;p&gt;AS&lt;/p&gt;&lt;p&gt;SELECT @intIDOut = @intID + 1&lt;/p&gt;&lt;p&gt;SELECT *&lt;/p&gt;&lt;p&gt;FROM authors&lt;/p&gt;&lt;p&gt;WHERE au_lname LIKE @au_lname + ''%''&lt;/p&gt;&lt;p&gt;--直接返回一个值&lt;/p&gt;&lt;p&gt;RETURN @intID + 2&lt;/p&gt;&lt;p&gt;调用该存储过程的asp程序如下：&lt;/p&gt;&lt;p&gt;&amp;lt;%@ Language=VBScript %&amp;gt;&lt;/p&gt;&lt;p&gt;&amp;lt;%&lt;/p&gt;&lt;p&gt;Dim CmdSP&lt;/p&gt;&lt;p&gt;Dim adoRS&lt;/p&gt;&lt;p&gt;Dim adCmdSPStoredProc&lt;/p&gt;&lt;p&gt;Dim adParamReturnValue&lt;/p&gt;&lt;p&gt;Dim adParaminput&lt;/p&gt;&lt;p&gt;Dim adParamOutput&lt;/p&gt;&lt;p&gt;Dim adInteger&lt;/p&gt;&lt;p&gt;Dim iVal&lt;/p&gt;&lt;p&gt;Dim oVal&lt;/p&gt;&lt;p&gt;Dim adoField&lt;/p&gt;&lt;p&gt;Dim adVarChar&lt;/p&gt;&lt;p&gt;&amp;#8216;这些值在 VB 中是预定义常量，可以直接调用，但在 VBScript 中没有预定义&lt;/p&gt;&lt;p&gt;adCmdSPStoredProc = 4&lt;/p&gt;&lt;p&gt;adParamReturnValue = 4&lt;/p&gt;&lt;p&gt;adParaminput = 1&lt;/p&gt;&lt;p&gt;adParamOutput = 2&lt;/p&gt;&lt;p&gt;adInteger = 3&lt;/p&gt;&lt;p&gt;adVarChar = 200&lt;/p&gt;&lt;p&gt;iVal = 5&lt;/p&gt;&lt;p&gt;oVal = 3&lt;/p&gt;&lt;p&gt;''建一个command对象&lt;/p&gt;&lt;p&gt;set CmdSP = Server.CreateObject("ADODB.Command")&lt;/p&gt;&lt;p&gt;''定义command 对象调用名称&lt;/p&gt;&lt;p&gt;CmdSP.CommandText = "sp_PubsTest"&lt;/p&gt;&lt;p&gt;''设置command调用类型是存储过程 (adCmdSPStoredProc = 4)&lt;/p&gt;&lt;p&gt;CmdSP.CommandType = adCmdSPStoredProc&lt;/p&gt;&lt;p&gt;''往command 对象中加参数&lt;/p&gt;&lt;p&gt;''定义存储过程有直接返回值，并且是个整数，省缺值是4&lt;/p&gt;&lt;p&gt;CmdSP.Parameters.Append CmdSP.CreateParameter("RETURN_VALUE", adInteger, adParamReturnValue, 4)&lt;/p&gt;&lt;p&gt;''定义一个字符型输入参数&lt;/p&gt;&lt;p&gt;CmdSP.Parameters.Append CmdSP.CreateParameter("@au_lname", adVarChar, adParaminput, 20, "M")&lt;/p&gt;&lt;p&gt;''定义一个整型输入参数&lt;/p&gt;&lt;p&gt;CmdSP.Parameters.Append CmdSP.CreateParameter("@intID", adInteger, adParamInput, , iVal)&lt;/p&gt;&lt;p&gt;''定义一个整型输出参数&lt;/p&gt;&lt;p&gt;CmdSP.Parameters.Append CmdSP.CreateParameter("@intIDOut", adInteger, adParamOutput, oVal)&lt;/p&gt;&lt;p&gt;''运行存储过程，并得到返回记录集&lt;/p&gt;&lt;p&gt;Set adoRS = CmdSP.Execute&lt;/p&gt;&lt;p&gt;''把每个记录打印出来，其中的字段是虚拟的，可以不用管&lt;/p&gt;&lt;p&gt;While Not adoRS.EOF&lt;/p&gt;&lt;p&gt;for each adoField in adoRS.Fields&lt;/p&gt;&lt;p&gt;Response.Write adoField.Name &amp;amp; "=" &amp;amp; adoField.Value &amp;amp; "&amp;lt;br&amp;gt;" &amp;amp; vbCRLF&lt;/p&gt;&lt;p&gt;Next&lt;/p&gt;&lt;p&gt;Response.Write "&amp;lt;br&amp;gt;"&lt;/p&gt;&lt;p&gt;adoRS.MoveNext&lt;/p&gt;&lt;p&gt;Wend&lt;/p&gt;&lt;p&gt;''打印两个输出值：&lt;/p&gt;&lt;p&gt;Response.Write "&amp;lt;p&amp;gt;@intIDOut = &amp;#8220; &amp;amp; CmdSP.Parameters("@intIDOut").Value &amp;amp; "&amp;lt;/p&amp;gt;"&lt;/p&gt;&lt;p&gt;Response.Write "&amp;lt;p&amp;gt;Return value = " &amp;amp; CmdSP.Parameters("RETURN_VALUE").Value &amp;amp; "&amp;lt;/p&amp;gt;"&lt;/p&gt;&lt;p&gt;''大扫除&lt;/p&gt;&lt;p&gt;Set adoRS = nothing&lt;/p&gt;&lt;p&gt;Set CmdSP.ActiveConnection = nothing&lt;/p&gt;&lt;p&gt;Set CmdSP = nothing&lt;/p&gt;&lt;p&gt;%&amp;gt;&lt;/p&gt;&lt;p&gt;此外还有其他方式，稍微偏门一些，以后慢慢再说，本文参考了多篇文章，这里不一一列出。&lt;/p&gt;&lt;p&gt;在Asp中使用存储过程&lt;/p&gt;&lt;p&gt;为了提高Asp程序的效率，有时需要在Asp中使用使用Sql Server的存储技术，下面简单作一个介绍。&lt;/p&gt;&lt;p&gt;存储过程的建立&lt;/p&gt;&lt;p&gt;这里只简单介绍如何在Sql Server的企业管理器中如何建立存储过程：&lt;/p&gt;&lt;p&gt;(１)打开企业管理器Enterprise manager&lt;/p&gt;&lt;p&gt;(２)选择服务器组(SQL Server Group)、服务器、数据库(Database)以及相就的数据库，鼠标右击对应数据库下的Stored Procdures项，在弹出的菜单中选择New Stored Procedure，在Stored Procedures Properties中输入建立存储过程的语句。下面是一个例子：&lt;/p&gt;&lt;p&gt;CREATE PROCEDURE proctest @mycola Char(10),@mycolb Char(10),@mycolc text AS&lt;/p&gt;&lt;p&gt;Insert into chatdata (mycola,mycolb,mycolc) values(@mycola,@mycolb,@mycolc)&lt;/p&gt;&lt;p&gt;在Sql Server的文档中它的语法为：&lt;/p&gt;&lt;p&gt;CREATE PROC[EDURE] procedure_name [;number] [&lt;/p&gt;&lt;p&gt;{@parameter data_type} [VARYING] [= default] [OUTPUT] ]&lt;/p&gt;&lt;p&gt;[,...n] [WITH { RECOMPILE | ENCRYPTION&lt;/p&gt;&lt;p&gt;| RECOMPILE, ENCRYPTION } ] [FOR REPLICATION] AS&lt;/p&gt;&lt;p&gt;sql_statement [...n]&lt;/p&gt;&lt;p&gt;如果你对Sql语法不熟悉，可以使用Check Syntax来检查语法。在上例中，表示建立存储过程名为mycola，带３个参数的存储过过程，其中第一个参数mycola数据类型为char，宽度10；第２个参数数据类型为char，宽度为10，第３个参数数据类型为text，在这里使用的是Sql Server的数据类型。&lt;/p&gt;&lt;p&gt;存储过程建立后，下面就是如何在Asp程序中调用该存储过程：在Asp中调用存储过程 为了提高Asp程序的效率，有时需要在Asp中使用使用Sql Server的存储技术，下面简单作一个,在上面的增加参数的语句p.Append cm.CreateParameter("@mycolc",201,1,250)中，格式为：&lt;/p&gt;&lt;p&gt;p.Append cm.CreateParameter("参数名称",类型,方向,大小)&lt;/p&gt;&lt;p&gt;参许参数值的类型的意义如下：&lt;/p&gt;&lt;p&gt;名称值 整数值 功能&lt;/p&gt;&lt;p&gt;adDBTimeStamp 135 日期时间数据类型&lt;/p&gt;&lt;p&gt;adDecimal 14 十进制整数值&lt;/p&gt;&lt;p&gt;adDouble 5 双精度小数值&lt;/p&gt;&lt;p&gt;adError 10 系统错误信息&lt;/p&gt;&lt;p&gt;AdGUID 72 全域性唯一识别字(Globally unique identifier)&lt;/p&gt;&lt;p&gt;adDispath 9 COM/OLE自动对象(Automation Object)&lt;/p&gt;&lt;p&gt;adInteger 3 4字节有符号整数&lt;/p&gt;&lt;p&gt;adIUnknown 13 COM/OLE对象&lt;/p&gt;&lt;p&gt;adLongVarBinary 205 大型２字节值&lt;/p&gt;&lt;p&gt;adLongVarChar 201 大型字符串值&lt;/p&gt;&lt;p&gt;adLongVarWChar 203 大型未编码字符串&lt;/p&gt;&lt;p&gt;adNumeric 131 十进制整数值&lt;/p&gt;&lt;p&gt;adSingle 4 单精度浮点小数&lt;/p&gt;&lt;p&gt;adSmallInt 2 2字节有符号整数&lt;/p&gt;&lt;p&gt;adTinyInt 16 1字节有符号整数&lt;/p&gt;&lt;p&gt;adUnsignedBigInt 21 8字节无符号整数&lt;/p&gt;&lt;p&gt;adUnsignedInt 19 4字节无符号整数&lt;/p&gt;&lt;p&gt;adUnsignedSmallInt 18 2字节无符号整数&lt;/p&gt;&lt;p&gt;adUnsignedTinyInt 17 1字节无符号整数&lt;/p&gt;&lt;p&gt;adUserDefined 132 用户自定义数据类型&lt;/p&gt;&lt;p&gt;adVariant 12 OLE对象&lt;/p&gt;&lt;p&gt;adVarBinary 204 双字节字符变量值&lt;/p&gt;&lt;p&gt;adVarChar 200 字符变量值&lt;/p&gt;&lt;p&gt;advarchar 202 未编码字符串变量值&lt;/p&gt;&lt;p&gt;adWchar 130 未编码字符串&lt;/p&gt;&lt;p&gt;方向值的意义如下：&lt;/p&gt;&lt;p&gt;名称值 整数值 功能&lt;/p&gt;&lt;p&gt;adParamInput 1 允许数据输入至该参数当中&lt;/p&gt;&lt;p&gt;adParamOutput 2 允许数据输出至该参数当中&lt;/p&gt;&lt;p&gt;adParamInputOutput 3 允许数据输入、输出至该参数当中&lt;/p&gt;&lt;p&gt;adparamReturnValue 4 允许从一子程序中返回数据至该参数当中&lt;/p&gt;&lt;p&gt;更多详细资源请参考Sql Server的文档和IIS的文档资源。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2404982.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/03/18/2404982.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/03/09/2388281.html</id><title type="text">通过日志恢复MSSQL数据例子</title><summary type="text">这段时间看了关于在SQL server 中通过日志和时间点来恢复数据。也看了一些网上的例子，看如何通过日志来恢复数据。 前提条件： 数据库的故障恢复改为非简单模式，去掉自动关闭和自动收缩两个选项 如果是简单模式：类似下面的语句操作数据就不会记录到日志中：select * into t from[表名] 这时为保证数据的完整要将数据库的恢复模式改成“完整” 测试环境： 1，建立数据库和测试表createdatabasezpcreatetable[zping.com](idint,namevarchar(20)) 插入测试数据：insertinto[zping.com](id,name)val..</summary><published>2012-03-09T12:42:00Z</published><updated>2012-03-09T12:42:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/09/2388281.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/03/09/2388281.html"/><content type="html">这段时间看了关于在SQL server 中通过日志和时间点来恢复数据。也看了一些网上的例子，看如何通过日志来恢复数据。 &lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 前提条件：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;font color="#ff0000"&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(0,0,255)"&gt;数据库的故障恢复改为非简单模式，去掉自动关闭和自动收缩两个选项&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;font color="#ff0000"&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span style="color: rgb(0,0,0)"&gt;&lt;font style="color: rgb(0,0,0)" color="#ff0000"&gt;如果是简单模式：&lt;/font&gt;&lt;/span&gt;&lt;/font&gt;&amp;nbsp;类似下面的语句操作数据就不会记录到日志中：&amp;nbsp;&amp;nbsp;select * into t from&amp;nbsp;[表名]&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这时为保证数据的完整要将数据库的恢复模式改成&lt;span style="color: rgb(0,0,255)"&gt;&amp;#8220;完整&amp;#8221;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 测试环境：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1，建立数据库和测试表&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: rgb(0,0,255)"&gt;create&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;database&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;zp&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;create&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;table&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;br /&gt;id&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;int&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&lt;br /&gt;name&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;varchar&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;20&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;br /&gt;)&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 插入测试数据：&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: rgb(0,0,255)"&gt;insert&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;into&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(id,name)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;values&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;1&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com1&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;insert&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;into&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(id,name)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;values&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;2&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com2&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;insert&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;into&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(id,name)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;values&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;3&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com3&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;insert&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;into&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(id,name)&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;values&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;4&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com4&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp; 备份数据库，可以通过sql server的可视化操作，下面是生成的代码：&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: rgb(0,0,255)"&gt;BACKUP&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;DATABASE&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zp&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;TO&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;DISK&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;N&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;C:\k.bak&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;WITH&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;NOFORMAT,&amp;nbsp;NOINIT,&amp;nbsp;&amp;nbsp;&lt;br /&gt;NAME&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;N&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zp-完整&amp;nbsp;数据库&amp;nbsp;备份&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;'&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;,&amp;nbsp;SKIP,&amp;nbsp;NOREWIND,&amp;nbsp;NOUNLOAD,&amp;nbsp;&amp;nbsp;STATS&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;10&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;GO&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 查看数据：&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;img src="http://hiphotos.baidu.com/%CC%EC%CF%C2%D7%E3%C7%F2001/pic/item/49bccc53fe1c1f5a367abe96.jpg" border="0"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp; 注意：&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;这时我们做一个完整备份&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;这时可能一不小心删除了一些数据。我们模拟一下：（假定删除了1，2的数据）&amp;nbsp;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;span style="color: rgb(0,0,255)"&gt;delete&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;from&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;[&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;zping.com&lt;/span&gt;&lt;span style="color: rgb(255,0,0)"&gt;]&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(0,0,255)"&gt;where&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;(id&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;1&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;or&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;id&amp;nbsp;&lt;/span&gt;&lt;span style="color: rgb(128,128,128)"&gt;=&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(128,0,0)"&gt;2&lt;/span&gt;&lt;span style="color: rgb(0,0,0)"&gt;)&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &lt;span style="color: rgb(0,0,255)"&gt;注意：&lt;strong&gt;要记住大体的删除时间&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp; 这时发现删除错误了，怎么把数据找回来啊。方法有两个：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1，通过&lt;em&gt;Log&lt;/em&gt; Explorer 查找进行恢复数据（我网站有此工具）&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2，另一种方法通过恢复日志（指定时间点恢复）来恢复数据。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 说明：第一个方法可以在线操作。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; 第二个方法必须停止数据库或者再另一个数据库恢复（前提是必须有一个完全备份和日志备份）&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 这里我们来讨论第二中方法指定时间点恢复：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; 1，这时对数据库事务日志做备份（注意，&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;如果没做个数据库完整备份，是不能做事务日志备份的&lt;/strong&gt;&lt;/span&gt;）&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 这时新建一个数据库zp（将以前的数据库改名），恢复数据库&lt;/p&gt;&lt;p&gt;&amp;nbsp; &lt;img src="http://hiphotos.baidu.com/%CC%EC%CF%C2%D7%E3%C7%F2001/pic/item/ccdda6b640e8b7318bd4b296.jpg" border="0"  alt="" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 这时我们看到，有两个还原的数据库备份，因为我对zp数据库备份了两次，两次的备份的数据文件都一样。&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;这里我们选择最近时间的备份&lt;/strong&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp; 默认在数据库的设置如下：是追加到备份集里，所以会有两个备份，如下图：&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;img src="http://hiphotos.baidu.com/%CC%EC%CF%C2%D7%E3%C7%F2001/pic/item/b04a527187d12a5e8701b096.jpg" border="0"  alt="" /&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;同时，&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;在&amp;#8221;选项&amp;#8220;里设置&amp;#8221;不回滚&amp;#8220;事务，&amp;nbsp;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp; 注意：通过事务日志还原数据库，必须选择"不回滚"事务&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;&amp;nbsp; &amp;nbsp;确定后：出现下面情况：&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&lt;strong&gt;&amp;nbsp; &lt;img src="http://hiphotos.baidu.com/%CC%EC%CF%C2%D7%E3%C7%F2001/pic/item/7173cf1e890438c987d6b696.jpg" border="0"  alt="" /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&amp;nbsp; &lt;span style="color: rgb(0,0,0)"&gt;&lt;span style="color: rgb(0,0,0)"&gt;这时发现，数据库一直是&amp;#8221;正在还原&amp;#8220;，这时还原数据库事务日志，&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&lt;span style="color: rgb(0,0,0)"&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&amp;nbsp; 1，&amp;#8220;常规&amp;#8221;里选择时间，（刚删除的时间）&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="color: rgb(0,0,255)"&gt;&lt;span style="color: rgb(0,0,0)"&gt;&lt;span style="color: rgb(0,0,0)"&gt;&amp;nbsp;&amp;nbsp; 2，&amp;#8220;选项&amp;#8221;里将恢复状态设置为&amp;#8221;回滚未提交&amp;#8220;事务&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;img src="http://hiphotos.baidu.com/%CC%EC%CF%C2%D7%E3%C7%F2001/pic/item/355b6215778620434a90a796.jpg" border="0"  alt="" /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;确定后，查询数据库，发现数据回来了。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp; 总结&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;1，&amp;nbsp;这是一般大型网站数据安全的一个办法，因为数据库比较大（可能有几百G）数据，做一次完整备份时间很长，而且影响数据库服务器的性能， 为保证数据安全，大多采用完整备份+事务日志备份来保证数据安全。例如：一天做一次或者2天做一次完整备份，几个小时内做一次日志备份。（当然可以用写一 个job来实现）&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 2，如SQL server 2005里的镜像就是采用的这种事务日志同步的方法保证数据的同步。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp; 3，如果恢复的日志数据出现&amp;#8221;LSN&amp;#8220;太早和太晚说明了事务日志间的不连续。这时要注意备份的时间和顺序。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2388281.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/03/09/2388281.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348597.html</id><title type="text">30 年内软件技术的不变与变化</title><summary type="text">软件技术及相关问题的变化是发明创新、公司产品运作、社会市场需求消费、人才资金循环、政策法律等等整体运行中的一个小部分，其发展过程将受诸多因素的影响，但其自身也是有一定规律的。作为行业中具体干活的人，面对这个技术日新月异的行业，琢磨一下行业未来 30 年的某些事情。 30 年后的事情不用考虑了，就算想清楚也没用了。 30 年内的软件技术及相关问题分为变化不大的和变化可能比较大的。变化不大的学会了用熟了会终身收益，变化大的要及时把握参与深度。 一、变化不大的 1. Intel x86 的指令集 原因很简单，如果这些指令集发生重大变化，那这行业开发、积累的软件都不能运行了，变化成本太高。...</summary><published>2012-02-12T21:15:00Z</published><updated>2012-02-12T21:15:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348597.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348597.html"/><content type="html">&lt;p&gt;软件技术及相关问题的变化是发明创新、公司产品运作、社会市场需求消费、人才资金循环、政策法律等等整体运行中的一个小部分，其发展过程将受诸多因素的影响，但其自身也是有一定规律的。作为行业中具体干活的人，面对这个技术日新月异的行业，琢磨一下行业未来 30 年的某些事情。&lt;/p&gt;&lt;p&gt;30 年后的事情不用考虑了，就算想清楚也没用了。&lt;/p&gt;&lt;p&gt;30 年内的软件技术及相关问题分为变化不大的和变化可能比较大的。变化不大的学会了用熟了会终身收益，变化大的要及时把握参与深度。&lt;/p&gt;&lt;p&gt;一、变化不大的&lt;/p&gt;&lt;p&gt;1. Intel x86 的指令集&lt;/p&gt;&lt;p&gt;原因很简单，如果这些指令集发生重大变化，那这行业开发、积累的软件都不能运行了，变化成本太高。&lt;/p&gt;&lt;p&gt;即使从32位发展到64位、128位，指令集的兼容是可以预见的。&lt;/p&gt;&lt;p&gt;2. 操作系统 - 启动过程&lt;/p&gt;&lt;p&gt;系统加电复位、硬件自检、操作系统引导、内存管理、进程管理、硬件中断处理、操作系统其它部分引导、用户 Shell 引导等这一套流程应该不会有大的变化。&lt;/p&gt;&lt;p&gt;3. 操作系统 - 内存管理&lt;/p&gt;&lt;p&gt;i386 的三层内存管理模式现在还看不出有多大的变化趋势。操作系统的内存管理模式、API也不会有大变化。&lt;/p&gt;&lt;p&gt;4. 操作系统 - 进程（线程）及其调度&lt;/p&gt;&lt;p&gt;只要操作系统内程序的运行是通过时钟中断或其它软硬件中断进行调度，那么进程是操作系统调度的基本单位。如从某一天开始&amp;#8220;独立的二进制组件&amp;#8221;成为操作系统的基本调度单位，那可能更多的是进程控制块的变化。&amp;#8220;独立的二进制组件&amp;#8221;的加载本身很可能就是进程。&lt;/p&gt;&lt;p&gt;5. 操作系统 - 文件系统 API&lt;/p&gt;&lt;p&gt;文件系统可能会不断变化，但文件系统的 API 应该不会有多大变化。&lt;/p&gt;&lt;p&gt;6. 数据库 - SQL 语言&lt;/p&gt;&lt;p&gt;关系数据库的理论与产品技术已经非常成熟，对维护到现在已经保存的大量数据而言，SQL 语言是很难被替换的，XML 可能将会与 SQL 合作而不是替换。即使对象数据库理论及产品成熟了，SQL 肯定将被兼容。&lt;/p&gt;&lt;p&gt;7. 网络浏览的协议与格式 - HTTP、HTML、Javascript&lt;/p&gt;&lt;p&gt;就算大家对 HTML 再不满意，其修改、进步的步伐也不会很快，太多的信息内容保存成这种格式了，变化的成本太高。&lt;/p&gt;&lt;p&gt;HTTP 是与 HTML 相伴的，变化不会太大。Javascript 更是如此。&lt;/p&gt;&lt;p&gt;8. 电子邮件的协议与格式 - POP3、SMTP、MIME&lt;/p&gt;&lt;p&gt;POP3、SMTP、MIME 也已成大规模，变化的成本很高。&lt;/p&gt;&lt;p&gt;9. 网络协议 - TCP/IP 族&lt;/p&gt;&lt;p&gt;IPv4 到 IPv6 是可以看到的，但 TCP/IP 的基本结构及 API 应该不会有多大变化。变化的成本太高。&lt;/p&gt;&lt;p&gt;10. 微软的Windows - Windows&lt;/p&gt;&lt;p&gt;除非连续发生重大经营失误，否则微软是不会简单倒下去的，关于这个主要不是技术的问题，不多说。简单认为 Windows 会存在很长的时间。&lt;/p&gt;&lt;p&gt;Windows（产品） 中的 Windows（窗口技术）是精华，已经很成熟，其相关的 API，包括 GDI、消息机制、Common Controls等不会有太大变化。就算以后以组件的形式出现，那也只是 API 的另外一种形式。&lt;/p&gt;&lt;p&gt;11. 微软的Windows - DirectX&lt;/p&gt;&lt;p&gt;只要老百姓还在用 Windows，那么 DirectX 作为游戏的开发平台会长期的保持下去。&lt;/p&gt;&lt;p&gt;12. 开源组织与 IBM 的 Linux - Shell、XWindow&lt;/p&gt;&lt;p&gt;开源组织现在看不出任何的前景衰落，IBM 已经发展了百年，他们联合推动的 Linux 再活 30 年应该没问题。其基本的 Shell 与 XWindow 结构不会有太大变化。&lt;/p&gt;&lt;p&gt;13. OOP 语法与思想&lt;/p&gt;&lt;p&gt;编程语言是编写逻辑、调用 API、解决问题的工具。其中的 OOP 语法现在方兴未艾，引导了编译器、虚拟机、API 都向其转变。若干年后，即使编程语言又发展革命了，OOP 很可能将作为其基础。&lt;/p&gt;&lt;p&gt;14. 算法&lt;/p&gt;&lt;p&gt;可以说是数学的一部分，包括纯数学算法与应用业务逻辑或应用算法。解决问题的算法的生命力是永远的，独立于系统、编程语言。即使我们研究不出来新算法，但掌握某些算法是应该的，这是掌握基本软件开发知识后的长远竞争力之所在。&lt;/p&gt;&lt;p&gt;二、变化比较大且影响比较大的&lt;/p&gt;&lt;p&gt;1. 产品外观、用户操作界面与交互方式&lt;/p&gt;&lt;p&gt;产品外观、界面与交互方式的变化永无止境。像微软这样的公司在这方面投入巨大精力。实际上这是给老百姓看的，不是给开发人员的，但在很大程度上会影响开发人员的产品外观设计、界面设计及交互设计。&lt;/p&gt;&lt;p&gt;2. 编程语言、编译器及其支持库、虚拟机&lt;/p&gt;&lt;p&gt;具体的编程语言与编译工具的选择使用是程序员、开发部门自己的内部事务，一般与系统API、产品市场需求、开发结果等无关。影响编程语言与编译工具的选择使用的因素非常多，变化性很大。就算一个编程语言或其相关的编译工具的生命周期很长，但也很难保证被一个开发团队长期固定使用。过度沉迷进而局限于某个编译工具的风险很大，但不钻研到一定深度很难做出来好东西。&lt;/p&gt;&lt;p&gt;3. 开发管理模式&lt;/p&gt;&lt;p&gt;不同的产品、项目，不同的应用平台，不同的编程序语言，需要针对性的开发管理模式。即使使用相同的 OOP 语法的编程语言，针对不同的产品或编译工具其开发管理也是不同的。开发管理其实是组织开发人员利用编程语言写出结果的过程，当然应该不断地进行调整。有一些粗线条的管理理论只能进行指导，真正的实践是另一回事儿。&lt;/p&gt;&lt;p&gt;4. 开发技术的应用需求&lt;/p&gt;&lt;p&gt;随着软件应用平台厂商、开发工具厂商的不断的产品升级、市场推广活动，以及社会消费热点不断的变化，市场客户对开发技术的需求不断地进行调整。&lt;br /&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2348597.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348597.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348596.html</id><title type="text">JavaScript校验学习总结</title><summary type="text">//校验是否为空function IsNotEmpty(con,desc,flag){ var org = deleteSpace(con.value);if (org == ""){ alert(desc + "不能为空！"); if (flag == "1") { con.focus(); } return false;} else {return true;}}//校验是否为正确的日期格式function IsDate(sdate,desc){//判断日期型是否满足格式yyyy-mm-dd(10位) if (sdate.valu</summary><published>2012-02-12T21:14:00Z</published><updated>2012-02-12T21:14:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348596.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348596.html"/><content type="html">&lt;p&gt;//校验是否为空&lt;br /&gt;function IsNotEmpty(con,desc,flag){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var org = deleteSpace(con.value);&lt;br /&gt;&amp;nbsp;if (org == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc + "不能为空！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if&amp;nbsp; (flag == "1") {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验是否为正确的日期格式&lt;br /&gt;function IsDate(sdate,desc){&amp;nbsp;&amp;nbsp;&amp;nbsp;//判断日期型是否满足格式yyyy-mm-dd(10位)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (sdate.value == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (sdate.value.length!=10){&amp;nbsp;&amp;nbsp;//判断长度是否10位&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"错误:日期型长度必须是10位！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var yyyy='';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mm='';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var dd='';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s=/\d{4}[-]\d{2}[-]\d{2}/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok=s.exec(sdate.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ok==null){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"日期格式检测错误！\n必须是 'yyyy-mm-dd'格式输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; yyyy=sdate.value.substring(0,4);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mm=sdate.value.substring(5,7);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dd=sdate.value.substring(8,10);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (yyyy&amp;lt;1900||yyyy&amp;gt;2130){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: year beyond mark！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(mm&amp;lt;0||mm&amp;gt;12){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: month beyond the mark！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(dd&amp;lt;0||dd&amp;gt;31){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: day beyond the mark!\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else return(true);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验是否为正确的日期时间格式&lt;br /&gt;function IsDateTime(sdate,desc){&amp;nbsp;&amp;nbsp;&amp;nbsp;//判断日期型是否满足格式yyyy-mm-dd hh:mm:ss(19位)&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (sdate.value == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (sdate.value.length!=19){&amp;nbsp;&amp;nbsp;//判断长度是否10位&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"错误:日期型时间长度必须是19位！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var yyyy = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mm&amp;nbsp;&amp;nbsp; = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var dd&amp;nbsp;&amp;nbsp; = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var hh&amp;nbsp;&amp;nbsp; = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mi&amp;nbsp;&amp;nbsp; = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ss&amp;nbsp;&amp;nbsp; = '';&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s=/\d{4}[-]\d{2}[-]\d{2}[\s]\d{2}[:]\d{2}[:]\d{2}/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok=s.exec(sdate.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ok==null){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"日期格式检测错误！\n必须是 'yyyy-mm-dd hh:mm:ss'格式输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; yyyy = sdate.value.substring(0,4);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mm&amp;nbsp;&amp;nbsp; = sdate.value.substring(5,7);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dd&amp;nbsp;&amp;nbsp; = sdate.value.substring(8,10);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; hh&amp;nbsp;&amp;nbsp; = sdate.value.substring(11,13);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; mi&amp;nbsp;&amp;nbsp; = sdate.value.substring(14,16);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ss&amp;nbsp;&amp;nbsp; = sdate.value.substring(17,19);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (yyyy&amp;lt;1900||yyyy&amp;gt;2130){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: year beyond mark！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(mm&amp;lt;0||mm&amp;gt;12){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: month beyond the mark！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(dd&amp;lt;0||dd&amp;gt;31){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: day beyond the mark!\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(hh&amp;lt;0||hh&amp;gt;24){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: hour beyond the mark!\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(mi&amp;lt;0||mi&amp;gt;60){&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: minute beyond the mark!\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(ss&amp;lt;0||ss&amp;gt;60){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"Error: second beyond the mark!\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else return(true);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验是否数值&lt;br /&gt;function IsNumber(snum,desc){&amp;nbsp;&amp;nbsp;&amp;nbsp;//判断是否合法数字，比如：6.1,100 合法 ；。34，100。 不合法&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum.value == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1=/[^0-9.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum.value.length == 1){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[0-9]+[.]?[0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s3=/[.]+\w*[.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.value.substring(snum.value.length-1,snum.value.length);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint2=snum.value.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint3=snum.value.substring(1,2);&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="."||ifpoint2=="."){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"错误：数字头不能是'.'");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint2=="-"||ifpoint3=="-"){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"错误:不能为负值");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint2=="0"&amp;amp;&amp;amp;ifpoint3=="-"){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"错误：非法数值");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&amp;nbsp; false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1=s1.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok2=s2.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok3=s3.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((ok1==null)&amp;amp;&amp;amp;(ok2!=null)&amp;amp;&amp;amp;(ok3==null))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"非法数字！\n请重新输入！")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验是否有标记被选择&lt;br /&gt;function IsSelected(theform,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ilength = theform.elements.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var count = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;ilength;i++){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (theform.elements[i].type=="checkbox" &amp;amp;&amp;amp; theform.elements[i].checked==true){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (count == 0){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert("对不起，您没有选择"+desc+"!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else return true;&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验是否有标记被选择&lt;br /&gt;function IsChecked(theform,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ilength = theform.elements.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var count = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;ilength;i++){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (theform.elements[i].type=="radio" &amp;amp;&amp;amp; theform.elements[i].checked==true){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; count++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (count == 0){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert("对不起，您没有选择"+desc+"!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else return true;&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//下拉列表判断&lt;br /&gt;function IsSelectedField(fieldstr,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(fieldstr.selectedIndex&amp;gt;-1) return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert("对不起，您没有选择"+desc+"!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验结束日期是否大于开始日期&lt;br /&gt;function IsHighDate(fieldstr,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (!IsDate(fieldstr,desc)) return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var sedname = fieldstr.name;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var sedvalue = fieldstr.value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var iedlength = sedname.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var si = sedname.substring(iedlength-1,iedlength);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var sstname = "sd"+si;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var s = "document.form3."+sstname+".value";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var sstvalue = eval(s);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (sstvalue == "") {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if((sedvalue &amp;gt; sstvalue) || (sedvalue == sstvalue)){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"应大于开始时间");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fieldstr.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//日期输入判断&lt;br /&gt;function IsBiggerDate(bdate,edate){&lt;br /&gt;&amp;nbsp;if(edate.value&amp;gt;=bdate.value){&lt;br /&gt;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;}else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;alert("终止日期必须大于开始日期！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;bdate.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;//校验表单中动态数组大小比较&lt;br /&gt;function IsDiaHigh(stheform,ilength,sbstrm,sbdesc,sestrm,sedesc,sflagm){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var i=0;&lt;br /&gt;&amp;nbsp;for (i=0;i&amp;lt;ilength;i++){&lt;br /&gt;&amp;nbsp;&amp;nbsp;var tempflagm=sflagm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;var tempflagv=eval(stheform+"."+tempflagm+".checked");&lt;br /&gt;&amp;nbsp;&amp;nbsp;if&amp;nbsp; (tempflagv == true){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;var tempbstrm=sbstrm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;var tempestrm=sestrm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;var tempbstrv=eval(stheform+"."+tempbstrm+".value");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;var tempestrv=eval(stheform+"."+tempestrm+".value");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if&amp;nbsp; (tempbstrv&amp;gt;tempestrv){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var j=i+1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("第"+j+"行输入有误，"+sbdesc+"不应大于"+sedesc);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//表单判断&lt;br /&gt;function IsOneOnly(stheform,ilength,sfieldm,sfdesc,sfield2m,sf2desc,sfvalm,descv,sflagm){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var i = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var count = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for (i=0;i&amp;lt;ilength;i++){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var j = i+1;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var tempflagm = sflagm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var tempflagv = eval(stheform+"."+tempflagm+".checked");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var tempfieldm = sfieldm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var tempfieldv = eval(stheform+"."+tempfieldm+".value");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if&amp;nbsp; ((tempflagv == true) &amp;amp;&amp;amp; (tempfieldv == "0")){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;count++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var tempfield2m = sfield2m+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var tempfield2v = eval(stheform+"."+tempfield2m+".value");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var tempfvalm = sfvalm+i;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;var tempfvalv = eval(stheform+"."+tempfvalm+".value");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if&amp;nbsp; (tempfield2v == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;alert("第"+j+"行的"+sf2desc+"不能为空!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var truefield2v = parseFloat(tempfield2v);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (tempfvalv == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var truefvalv = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;var truefvalv = parseFloat(tempfvalv);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (truefield2v &amp;gt; truefvalv){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("第"+j+"行的"+sf2desc+"应大于0且小于当前"+descv+"("+truefvalv+")!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (count != 1){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("原商品有且只能有一种,请检查您的输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验当前域值是否小于某一值(&amp;gt;0)&lt;br /&gt;function IsLower(fieldstr,descf,dvalue,descv){&lt;br /&gt;&amp;nbsp;if&amp;nbsp; ((!IsEmpty(fieldstr,descf,"1")) || (!IsInteger(fieldstr,descf)))&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var thisvalue = parseFloat(fieldstr.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((thisvalue == 0) || (thisvalue &amp;gt; dvalue)){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(descf+"应大于0且小于当前"+descv+"("+dvalue+")!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fieldstr.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//数字判断&lt;br /&gt;function IsHigh(lfield,hfield,ldesc,hdesc){&lt;br /&gt;&amp;nbsp;var ltempval = lfield.value;&lt;br /&gt;&amp;nbsp;var htempval = hfield.value;&lt;br /&gt;&amp;nbsp;if&amp;nbsp; (ltempval &amp;gt; htempval){&lt;br /&gt;&amp;nbsp;&amp;nbsp;alert(hdesc+"不小于"+ldesc);&lt;br /&gt;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//数字输入&lt;br /&gt;function IsNumHigh(lfield,hnum,ldesc,hdesc){&lt;br /&gt;&amp;nbsp;if&amp;nbsp; (!IsNumber(lfield,ldesc)){&lt;br /&gt;&amp;nbsp;&amp;nbsp;alert(ldesc+"不是数字，请检查您的输入!");&lt;br /&gt;&amp;nbsp;&amp;nbsp;lfield.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var lnum = parseFloat(lfield.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (lnum &amp;lt; hnum){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(ldesc+"的值应大于"+hdesc+hnum);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;lfield.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; reutrn true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//判断长度&lt;br /&gt;function IsOverLen(fieldstr,ilength,desc){&lt;br /&gt;&amp;nbsp;if&amp;nbsp; (fieldstr.value == "")&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var itemplen = fieldstr.value.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (itemplen &amp;gt; ilength){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"的长度不应大于"+ilength);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;fieldstr.focus;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//判断下一步操作&lt;br /&gt;function IsNext(icount,desc){&lt;br /&gt;&amp;nbsp;if&amp;nbsp; (icount &amp;gt; 0){&lt;br /&gt;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert("对不起，文中没有"+desc+"，不能进行下一步操作！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&amp;nbsp;&lt;/p&gt;&lt;p&gt;//判断时间&lt;br /&gt;function IsTime(ctime,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ctime.value.length == 0) return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var s&amp;nbsp; = /^(([0-9]|[01][0-9]|2[0-3])(:([0-9]|[0-5][0-9])){0,2}|(0?[0-9]|1[0-1])(:([0-9]|[0-5][0-9])){0,2}\s?[aApP][mM])?$/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var ok = exec(ctime.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(ok!=null){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"非法时间！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctime.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//字符串多余空格&lt;br /&gt;function StrTrim(input){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var s=/(\s*)([\s*\S*]*)(\S+)/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; s.exec(input)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(s.exec(input)==null){return ""}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; return RegExp.$2+RegExp.$3&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//判断是否为正数&lt;br /&gt;function IsVNumber(snum,desc){&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("请输入"+desc);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1=/[^0-9.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum.length == 1){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[0-9]+[.]?[0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s3=/[.]+\w*[.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.substring(snum.length-1,snum.length);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint2=snum.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="."||ifpoint2=="."){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; window.alert(desc+"错误：数字头不能是'.'");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1=s1.exec(snum);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok2=s2.exec(snum);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok3=s3.exec(snum);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((ok1==null)&amp;amp;&amp;amp;(ok2!=null)&amp;amp;&amp;amp;(ok3==null)){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var tempnum = parseFloat(snum);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (tempnum &amp;gt; 0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"应大于0");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"非法数字！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验数量是否为整数(正整数,负整数,0)&lt;br /&gt;function IsNumberInt(snum,desc)&amp;nbsp;&amp;nbsp; &lt;br /&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if&amp;nbsp; (snum.value == "")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[a-z]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s3=/[\-][0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s4=/[.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.value.substring(snum.value.length-1,snum.value.length);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint2=snum.value.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint3=snum.value.substring(1,2);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="."||ifpoint2==".")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; alert(desc+"错误：数字头不能是'.'");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="-"&amp;amp;&amp;amp;ifpoint2=="-")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; alert(desc+"输入数据错误：'-'");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1=s1.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok2=s2.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok3=s3.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok4=s4.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((ok1==null))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //0，正整数&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if (ok4==null&amp;amp;&amp;amp;ok2==null&amp;amp;&amp;amp;ok3!=null&amp;amp;&amp;amp;ifpoint2=="-"&amp;amp;&amp;amp;ifpoint3!="-")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;//alert(desc+"为负整数！！！！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if(ok2!=null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;alert(desc+"非法数字！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if (ok4!=null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;alert(desc+"数量应该为整数！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;//校验是否为正整数&amp;nbsp;&amp;nbsp; &lt;br /&gt;function IsInt(snum,desc)&lt;br /&gt;{&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum.value == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.value.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="0"||ifpoint1==".")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"非正整数！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return&amp;nbsp; false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1=s1.exec(snum.value);&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((ok1==null))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; return true;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; alert(desc+"非正整数！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;} &lt;/p&gt;&lt;p&gt;//判断是否为正整数和0&lt;br /&gt;function IsInteger(snum,desc){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (snum.value == "")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s&amp;nbsp; = /[0-9]+/;&lt;br /&gt;&amp;nbsp;s1=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;s2=/[.]+/;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok = s.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1 = s1.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok2 = s2.exec(snum.value);&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.value.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint2=snum.value.substring(1,2);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="0"&amp;amp;&amp;amp;ifpoint2=="0")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"输入数据错误");&lt;br /&gt;&amp;nbsp;&amp;nbsp; snum.focus();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="-")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"输入数据错误");&lt;br /&gt;&amp;nbsp;&amp;nbsp; snum.focus();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="0"&amp;amp;&amp;amp;snum.value.length &amp;gt; 1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"输入数据错误");&lt;br /&gt;&amp;nbsp;&amp;nbsp; snum.focus();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(ok2!=null){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"输入数据非整数！！");&lt;br /&gt;&amp;nbsp;&amp;nbsp; snum.focus();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(ok!=null&amp;amp;&amp;amp;ok1==null){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var inum = parseInt(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(inum&amp;gt;2500000000){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"数据太大，超出范围！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;snum.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert(desc+"非法数字！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; snum.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//校验数量是否为正整数&lt;br /&gt;function IsNumberNotNav(snum,desc){&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;if&amp;nbsp; (snum.value == "")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s1=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s2=/[a-z]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s3=/[\-][0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; s4=/[.]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint1=snum.value.substring(snum.value.length-1,snum.value.length);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint2=snum.value.substring(0,1);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ifpoint3=snum.value.substring(1,2);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; (ifpoint1=="."||ifpoint2==".")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"错误：数字头不能是'.'");&lt;br /&gt;&amp;nbsp;&amp;nbsp; snum.focus();&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return(false);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok1=s1.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok2=s2.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok3=s3.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ok4=s4.exec(snum.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if&amp;nbsp; ((ok1==null))&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //&amp;nbsp;&amp;nbsp; (ok2!=null))||(ok3!=null))&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; if (ok4==null&amp;amp;&amp;amp;ok2==null&amp;amp;&amp;amp;ok3!=null&amp;amp;&amp;amp;ifpoint2=="-"&amp;amp;&amp;amp;ifpoint3!="-")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert(desc+"不能为负数！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; snum.focus(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if(ok2!=null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;alert(desc+"非法数字！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; snum.focus(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;if (ok4!=null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;alert(desc+"应该为整数！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; snum.focus(); &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/p&gt;&lt;p&gt;//判断输入的是否为数字(onkeyPress="return IsJustNum(this)")&lt;br /&gt;function IsJustNum(con) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (event.keyCode&amp;gt;57||event.keyCode&amp;lt;48) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;s=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(con.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok==null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.value = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp; *当失去焦点并改变内容时判断输入（onchange="IsJustNumOnCh(this)"）&lt;br /&gt;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;function IsJustNumOnCh(con) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;s=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(con.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok==null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.value = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;*当失去焦点并改变内容时判断输入是否满足时间格式（onchange="IsValidTimeOnCh(this,flag)"）&lt;br /&gt;&amp;nbsp; * by&lt;br /&gt;&amp;nbsp; * flag=1--hour;flag=2--minute&lt;br /&gt;&amp;nbsp; */&lt;br /&gt;function IsValidTimeOnCh(con,flag){&lt;br /&gt;&amp;nbsp;&amp;nbsp;s=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(con.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok==null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(flag==1)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(con.value&amp;gt;=24 || con.value&amp;lt;0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("请保证输入的小时数小于24");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;else if(flag==2)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if(con.value&amp;gt;=60 || con.value&amp;lt;0)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("请保证输入的分钟数小于60");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;else &lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.value = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;//判断输入的是否为数字（onkeyPress="return IsJustNum(this)"）&lt;br /&gt;function IsValidTime(con,flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (event.keyCode&amp;gt;57||event.keyCode&amp;lt;48) &lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;s=/[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(con.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok==null) &lt;br /&gt;&amp;nbsp;&amp;nbsp;{&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;} &lt;br /&gt;&amp;nbsp;&amp;nbsp;else &lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.value = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;//去除字符串前后空格&lt;br /&gt;function deleteSpace(orgString) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;var org = orgString.toString();&lt;br /&gt;&amp;nbsp;&amp;nbsp;var len = org.length;&lt;br /&gt;&amp;nbsp;&amp;nbsp;var offset = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp;while (offset&amp;lt;len&amp;amp;&amp;amp;org.charAt(offset)==" ") {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;offset++;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;while (offset&amp;lt;len&amp;amp;&amp;amp;org.charAt(len-1)==" ") {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;len--;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;return (offset&amp;gt;0||len&amp;lt;org.length)? org.substring(offset,len):org;&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;//判断是否为空&amp;nbsp; &lt;br /&gt;function IsNull(con) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;var org = deleteSpace(con.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (org == ""){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("输入不能为空！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;con.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;} else {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp; * 判断输入是否为（HH:MM）时间格式&lt;br /&gt;&amp;nbsp; * @param org 原对象&lt;br /&gt;&amp;nbsp; &amp;nbsp; * @param flag 是否输出错误信息（alert），并定位焦点&lt;br /&gt;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;function IsCorrectTime(org, flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (deleteSpace(org.value).length!=5) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("正确的时间格式为(HH:MM)，长度为5位");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;s = /[0-9][0-9][:][0-9][0-9]/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(org.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok==null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n正确的时间格式为(HH:MM),长度为5位！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;var HH = org.value.substring(0,2);&lt;br /&gt;&amp;nbsp;&amp;nbsp;var MM = org.value.substring(3,5);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (HH&amp;lt;0||HH&amp;gt;23) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("输入的小时不正确，请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (MM&amp;lt;0||MM&amp;gt;59) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("输入的分钟不正确，请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;return true;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;/**&lt;br /&gt;&amp;nbsp; * 判断输入是否为（YYYYMM）日期格式&lt;br /&gt;&amp;nbsp; * @param org 原对象&lt;br /&gt;&amp;nbsp; &amp;nbsp; * @param flag 是否输出错误信息（alert），并定位焦点&lt;br /&gt;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;function IsCorrectDateMonth(org, flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (deleteSpace(org.value).length!=6) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("正确的日期格式为(YYYYMM)，长度为6位！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;s = /[^0-9]+/;&lt;br /&gt;&amp;nbsp;&amp;nbsp;ok = s.exec(org.value);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if (ok!=null) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;alert("输入非法字符！\n正确的日期格式为(YYYYMM),长度为6位！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;var yyyy = org.value.substring(0,4);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; var mm&amp;nbsp;&amp;nbsp; = org.value.substring(4,6);&lt;br /&gt;&amp;nbsp;&amp;nbsp;if&amp;nbsp; (yyyy&amp;lt;1900||yyyy&amp;gt;2130){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;alert("输入的年份不正确，请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else if(mm&amp;lt;1||mm&amp;gt;12){&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (flag) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; alert("输入的月份不正确，请重新输入！");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; org.focus();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return false;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return true;&lt;br /&gt;&amp;nbsp;}&lt;/p&gt;&lt;p&gt;&lt;br /&gt;/*显示隐藏文本字段*/&lt;br /&gt;function codeFold(tbl, divid)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;butt = tbl.rows[0].cells[1];&lt;br /&gt;&amp;nbsp;with (document.getElementById(divid).style){&lt;br /&gt;&amp;nbsp;&amp;nbsp;if(visibility == "visible"||visibility =='')&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;visibility ="hidden";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;butt.innerText = "&amp;#9660;";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;else&amp;nbsp; {&lt;br /&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;visibility = "visible";&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;butt.innerText = "&amp;#9650;"; &amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;/*选择或取消所有的Checkbox*/&lt;br /&gt;function doSelectAll(obj)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;var name=obj.name;&lt;br /&gt;&amp;nbsp;for (i=0;i&amp;lt;document.forms[0].elements[name].length;i++){&lt;br /&gt;&amp;nbsp;&amp;nbsp;document.forms[0].elements[name][i].checked = obj.checked;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&lt;br /&gt;}&lt;/p&gt;&lt;p&gt;//邮件判断&lt;br /&gt;function e_mail(){&lt;br /&gt;var e=document.form;&lt;br /&gt;var reg = /^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;&lt;br /&gt;if(!reg.exec(e.email.value)){&lt;br /&gt;&amp;nbsp;alert("email输入不正确，请检查输入!");&lt;br /&gt;&amp;nbsp;e.date_t.focus();&lt;br /&gt;&amp;nbsp;return false;&lt;br /&gt;&amp;nbsp;}&lt;br /&gt;}&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2348596.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/02/13/2348596.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2012/02/05/2339295.html</id><title type="text">哲学整体框架</title><summary type="text">马哲包括5大部分即唯物论，辩证法，认识论，历史唯物论，资本主义本质论。其中辩证法又包括：1.两大特征：（1）普遍联系（2）永恒发展。2.三大规律：（1）对立统一规律（2）量变质变规律（3）否定之否定规律。3.五对范畴（1）原因和结果（2）必然性和偶然性（3）本质和现象（4）可能和现实（5）形式和内容。4.五个方法：（1）归纳和演绎（2）分析和综合（3）具体和抽象（4）逻辑和历史的统一（5）辩证思维的方法</summary><published>2012-02-05T13:23:00Z</published><updated>2012-02-05T13:23:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/05/2339295.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2012/02/05/2339295.html"/><content type="html">&lt;p&gt;马哲包括5大部分即唯物论，辩证法，认识论，历史唯物论，资本主义本质论。&lt;/p&gt;&lt;p&gt;其中辩证法又包括：&lt;/p&gt;&lt;p&gt;1.两大特征：（1）普遍联系（2）永恒发展。&lt;/p&gt;&lt;p&gt;2.三大规律：（1）对立统一规律（2）量变质变规律（3）否定之否定规律。&lt;/p&gt;&lt;p&gt;3.五对范畴（1）原因和结果（2）必然性和偶然性（3）本质和现象（4）可能和现实（5）形式和内容。&lt;/p&gt;&lt;p&gt;4.五个方法：（1）归纳和演绎（2）分析和综合（3）具体和抽象（4）逻辑和历史的统一（5）辩证思维的方法&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2339295.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2012/02/05/2339295.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2011/12/30/2307307.html</id><title type="text">MS SQL Server 2000 游标的使用方法</title><summary type="text">****************************************************************************************************** 游标的使用方法 ********************************************* *************************************** 整理BY--苏贵阳 2010年7月28日 *********************************************************************************.</summary><published>2011-12-30T04:30:00Z</published><updated>2011-12-30T04:30:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2011/12/30/2307307.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2011/12/30/2307307.html"/><content type="html">&lt;div class="showContent" style="behavior: none" isimg="false"&gt;&lt;p&gt;*********************************************************************************&lt;br /&gt;*********************&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 游标的使用方法&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; *****************************&lt;br /&gt;****************&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ***********************&lt;br /&gt;****************&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 整理BY--苏贵阳&amp;nbsp;&amp;nbsp; 2010年7月28日&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ***********************&lt;br /&gt;*********************************************************************************&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;一、游标的作用：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Transact-SQL 游标主要用在存储过程、触发器和 Transact-SQL 脚本中，它们使结果集的内容对其它&amp;nbsp;&amp;nbsp;&amp;nbsp; Transact-SQL 语句同样可用。&lt;/p&gt;&lt;p&gt;二、游标的使用过程：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.声明游标变量包含游标返回的数据。&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.使用declare cursor 语句把游标与一个select 语句相关联。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如： declare CKMX_cursor cursor for&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select CKMX_WLBH,CKMX_SL,CKMX_DJ,CKMX_BZ from #CKMX&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3.使用open语句执行select语句生成游标。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如：&amp;nbsp; open CKMX_cursor&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4.使用fetch into 语句提取单行，并把每列中的数据转移到指定的变量中。然后，其他SQL语句可以引用这些变量来访问已提取的数据值。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 如：fetch from CKMX_cursor into @CKMX_WLBH,@CKMX_SL,@CKMX_DJ,@CKMX_BZ&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 要先定义使用到的变量：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare @CKMX_WLBH&amp;nbsp; varchar(20)--存放从临时表中查询出来的物料代码&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare @CKMX_SL float&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --存放从临时表中查询出来的物料数量&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare @CKMX_DJ float&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; --存放从临时表中查询出来的物料单价&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare @CKMX_BZ varchar(50)&amp;nbsp;&amp;nbsp; --存放从临时表中查询出来的物料备注&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5.利用while循环来遍历游标中的内容&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 例一：&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while @@fetch_status=0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;#8230;&amp;#8230;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 可以使用已经赋值了的变量： @CKMX_WLBH,@CKMX_SL,@CKMX_DJ,@CKMX_BZ&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fetch from CKMX_cursor into @CKMX_WLBH,@CKMX_SL,@CKMX_DJ,@CKMX_BZ&amp;nbsp;&amp;nbsp;&amp;nbsp; --如果没有此句，会导致死循环。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;#8230;&amp;#8230;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; @@fetch_status 返回 fetch 语句执行的最后游标状态，而不是任何当前被打开的游标的状态。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 返回值：0:fetch语句执行成功；&amp;nbsp; -1:fetch语句执行失败，或者此行不在结果集中。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 例二：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare employee_cursor cursor for&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select lastname, firstname from northwind.dbo.employees&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; open employee_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fetch next from employee_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; while @@fetch_status = 0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; begin&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; fetch next from employee_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; close employee_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; deallocate employee_cursor&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6.结束游标：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 关闭当前使用的游标：&amp;nbsp;&amp;nbsp; close CKMX_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 处于关闭状态的游标，如果重新发出一个open 语句，则该游标结构仍可用于处理。&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 完全释放游标资源： deallocate CKMX_cursor&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7.其他&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MS SQL SERVER 2000中支持 cursor 数据类型的变量。&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 定义并关联游标变量&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法一：&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare @myvariable cursor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -- 定义游标变量&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare mycursor cursor for&amp;nbsp;&amp;nbsp;&amp;nbsp; -- 定义游标&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select lastname from northwind.dbo.employees&lt;/p&gt;&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @myvariable = mycursor&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; -- 关联游标&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 方法二：&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set @myvariable = cursor scroll keyset for&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select lastname from northwind.dbo.employees&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;本文出自 &amp;#8220;&lt;a href="http://suguiyang.blog.51cto.com/"&gt;迷茫后的短暂停留&lt;/a&gt;&amp;#8221; 博客，请务必保留此出处&lt;a href="http://suguiyang.blog.51cto.com/1035725/416979"&gt;http://suguiyang.blog.51cto.com/1035725/416979&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2307307.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2011/12/30/2307307.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2011/11/24/2262271.html</id><title type="text">查询整个数据库中某个特定值所在的表和字段的方法</title><summary type="text">有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段，在网上搜了一下，找到一个比较好的方法，通过一个存储过程实现的。只需要传入一个想要查找的值，即可查询出这个值所在的表和字段名。前提是要将这个存储过程放在所查询的数据库。CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--&gt;CREATEPROCEDURE[dbo].[SP_FindValueInDB](@valueVARCHAR(1024))ASBEGIN--SETNOCOUNTO</summary><published>2011-11-24T13:08:00Z</published><updated>2011-11-24T13:08:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2011/11/24/2262271.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2011/11/24/2262271.html"/><content type="html">&lt;div id="cnblogs_post_body"&gt;&lt;p&gt;有时候我们想通过一个值知道这个值来自数据库的哪个表以及哪个字段，在网上搜了一下，找到一个比较好的方法，通过一个存储过程实现的。只需要传入一个想要查找的值，即可查询出这个值所在的表和字段名。&lt;/p&gt;&lt;p&gt;前提是要将这个存储过程放在所查询的数据库。&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;img id="Code_Closed_Image_172721" style="display: none" onclick="this.style.display='none'; document.getElementById('Code_Closed_Text_172721').style.display='none'; document.getElementById('Code_Open_Image_172721').style.display='inline'; document.getElementById('Code_Open_Text_172721').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ContractedBlock.gif" width="11" align="top"&gt;&lt;img id="Code_Open_Image_172721" style="display: inline" onclick="this.style.display='none'; document.getElementById('Code_Open_Text_172721').style.display='none'; getElementById('Code_Closed_Image_172721').style.display='inline'; getElementById('Code_Closed_Text_172721').style.display='inline';" height="16" src="http://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif" width="11" align="top"&gt;&lt;span class="cnblogs_code_Collapse" id="Code_Closed_Text_172721" style="display: none"&gt;Code&lt;/span&gt;&lt;span id="Code_Open_Text_172721" style="display: inline"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br /&gt;http://www.CodeHighlighter.com/&lt;br /&gt;&lt;br /&gt;--&gt;&lt;span style="color: #0000ff"&gt;CREATE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;PROCEDURE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;dbo&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;.&lt;/span&gt;&lt;span style="color: #ff0000"&gt;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;SP_FindValueInDB&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@value&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;1024&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;AS&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;BEGIN&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt;&amp;nbsp;SET&amp;nbsp;NOCOUNT&amp;nbsp;ON&amp;nbsp;added&amp;nbsp;to&amp;nbsp;prevent&amp;nbsp;extra&amp;nbsp;result&amp;nbsp;sets&amp;nbsp;from&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008080"&gt;--&lt;/span&gt;&lt;span style="color: #008080"&gt;&amp;nbsp;interfering&amp;nbsp;with&amp;nbsp;SELECT&amp;nbsp;statements.&lt;/span&gt;&lt;span style="color: #008080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;NOCOUNT&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;ON&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;1024&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@table&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;64&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@column&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;64&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;CREATE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;TABLE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;#t&amp;nbsp;(&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tablename&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;64&lt;/span&gt;&lt;span style="color: #000000"&gt;),&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;columnname&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;VARCHAR&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;64&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;)&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DECLARE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;CURSOR&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FOR&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;o.name,&amp;nbsp;c.name&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;syscolumns&amp;nbsp;c&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;INNER&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;JOIN&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;sysobjects&amp;nbsp;o&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;ON&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;c.id&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;o.id&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;WHERE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;o.type&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;U&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;AND&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;c.xtype&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;IN&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;167&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;175&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;231&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;239&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;ORDER&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;BY&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;o.name,&amp;nbsp;c.name&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;OPEN&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FETCH&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;NEXT&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;INTO&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@table&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@column&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;WHILE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: #008000"&gt;@@FETCH_STATUS&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="font-weight: bold; color: #800000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;BEGIN&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;IF&amp;nbsp;EXISTS(SELECT&amp;nbsp;NULL&amp;nbsp;FROM&amp;nbsp;[&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@table&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;WHERE&amp;nbsp;RTRIM(LTRIM([&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@column&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;]))&amp;nbsp;LIKE&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000"&gt;%&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@value&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;%&lt;/span&gt;&lt;span style="color: #ff0000"&gt;''&lt;/span&gt;&lt;span style="color: #ff0000"&gt;)&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #ff0000"&gt;INSERT&amp;nbsp;INTO&amp;nbsp;#t&amp;nbsp;VALUES&amp;nbsp;(&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'''&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@table&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'''&lt;/span&gt;&lt;span style="color: #ff0000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'''&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SET&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@column&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'''&lt;/span&gt;&lt;span style="color: #ff0000"&gt;)&lt;/span&gt;&lt;span style="color: #ff0000"&gt;'&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;EXEC&lt;/span&gt;&lt;span style="color: #000000"&gt;(&lt;/span&gt;&lt;span style="color: #008000"&gt;@sql&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FETCH&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;NEXT&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;INTO&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@table&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;@column&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;END&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;CLOSE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DEALLOCATE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;TABLES&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;SELECT&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;*&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;FROM&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;#t&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;DROP&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;TABLE&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;#t&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;End&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;例如，要查询值'BBQ CHIC SW'，结果如下：&lt;/p&gt;&lt;p&gt;&lt;img src="http://pic002.cnblogs.com/img/michaelxu/200911/2009110417312522.jpg"  alt="" /&gt;&lt;/p&gt;&lt;p&gt;返回三条记录，说明这个值存在于三个表中，分别为_dts_menudef, g_dts_menudef和g_recipe中，字段名分别为name1, name1, name。&lt;/p&gt;&lt;p&gt;非常好用。&lt;/p&gt;&lt;/div&gt;&lt;script type="text/javascript"&gt;if ($ != jQuery) {$ = jQuery.noConflict();}var isLogined = true;var cb_blogId = 21149;var cb_entryId = 1596106;var cb_blogApp = "michaelxu";var cb_blogUserGuid = "df5e360b-63cf-dd11-9e4d-001cf0cd104b";var cb_entryCreatedDate = '2009/11/4 17:33:00';&lt;/script&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2262271.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2011/11/24/2262271.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2011/11/14/2247978.html</id><title type="text">C#中DataGridView多層表頭的制作(1)</title><summary type="text">C#中DataGridView多層表頭的制作(1)先看效果:1.首先要調整表頭的高度,記得在DataGrid中是沒法調整表頭高度,但DataGridView是可以的.設定ColumnHeadsHeightSizeMode為EnableResizing或DisableResizing.再設定ColumnHeadersHeight2.要繪製自已的表頭,必須要得到表頭的寬(由開始列,結束列決定)和高(由總層次,第幾層決定),我用一個類對它做了封裝 :publicclassHeaderCell{privateintstartColIndex;privateintendColIndex;privatei</summary><published>2011-11-14T02:12:00Z</published><updated>2011-11-14T02:12:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2011/11/14/2247978.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2011/11/14/2247978.html"/><content type="html">&lt;p&gt;C#中DataGridView多層表頭的制作(1)&lt;br /&gt;先看效果:&lt;/p&gt;&lt;p&gt;&lt;img alt="" src="http://p.blog.csdn.net/images/p_blog_csdn_net/manimanihome/335497/o_08012201.bmp" /&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;1.首先要調整表頭的高度,記得在DataGrid中是沒法調整表頭高度,但DataGridView是可以的.&lt;br /&gt;設定ColumnHeadsHeightSizeMode為EnableResizing或DisableResizing.再設定ColumnHeadersHeight&lt;/p&gt;&lt;p&gt;&lt;br /&gt;2.要繪製自已的表頭,必須要得到表頭的寬(由開始列,結束列決定)和高(由總層次,第幾層決定),我用一個類對它做了封裝 :&lt;/p&gt;&lt;div style="border-right: windowtext 0.5pt solid; padding-right: 5.4pt; border-top: windowtext 0.5pt solid; padding-left: 5.4pt;background: #e6e6e6; padding-bottom: 4px; border-left: windowtext 0.5pt solid; width: 95%; word-break: break-all; padding-top: 4px; border-bottom: windowtext 0.5pt solid"&gt;&lt;div&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;class&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;deepCount;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startDeepIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endDeepIndex;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;param&amp;nbsp;name="startColIndex"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;param&amp;nbsp;name="endColIndex"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;param&amp;nbsp;name="deepCount"&amp;gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;///&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;param&amp;nbsp;name="deepIndex"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;從下往上數,序號從1開始.&lt;/span&gt;&lt;span style="color: #808080"&gt;&amp;lt;/param&amp;gt;&lt;/span&gt;&lt;span style="color: #808080"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startColIndex,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endColIndex,&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startDeepIndex,&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endDeepIndex,&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;deepCount)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startColIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endColIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.deepCount&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;deepCount;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startDeepIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;startDeepIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endDeepIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;endDeepIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StartColIndex&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startColIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EndColIndex&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endColIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endColIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;DeepCount&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.deepCount;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.deepCount&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StartDeepIndex&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startDeepIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.startDeepIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;public&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;EndDeepIndex&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;get&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;return&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endDeepIndex;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;set&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.endDeepIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;value;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;再做一個函數用來重畫表頭,在這里我還做了一個重載:&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;div style="border-right: windowtext 0.5pt solid; padding-right: 5.4pt; border-top: windowtext 0.5pt solid; padding-left: 5.4pt;background: #e6e6e6; padding-bottom: 4px; border-left: windowtext 0.5pt solid; width: 95%; word-break: break-all; padding-top: 4px; border-bottom: windowtext 0.5pt solid"&gt;&lt;div&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;SetColTitle(DataGridView&amp;nbsp;dgv,&amp;nbsp;HeaderCell&amp;nbsp;topColumn,&amp;nbsp;PaintEventArgs&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;title)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle(dgv,&amp;nbsp;topColumn,&amp;nbsp;e,&amp;nbsp;title,&amp;nbsp;dgv.ColumnHeadersDefaultCellStyle.BackColor,&amp;nbsp;dgv.ColumnHeadersDefaultCellStyle.ForeColor);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;SetColTitle(DataGridView&amp;nbsp;dgv,&amp;nbsp;HeaderCell&amp;nbsp;topColumn,&amp;nbsp;PaintEventArgs&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;string&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;title,Color&amp;nbsp;backColor,Color&amp;nbsp;foreColor)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;x&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;width&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;y&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;4&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;height&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(dgv.ColumnHeadersHeight&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;4&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;*&lt;/span&gt;&lt;span style="color: #000000"&gt;(topColumn.EndDeepIndex&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;topColumn.StartDeepIndex&lt;/span&gt;&lt;span style="color: #000000"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;/span&gt;&lt;span style="color: #000000"&gt;/&lt;/span&gt;&lt;span style="color: #000000"&gt;topColumn.DeepCount;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(dgv.RowHeadersVisible)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;x&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dgv.RowHeadersWidth;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;for&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;i&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;0&lt;/span&gt;&lt;span style="color: #000000"&gt;;&amp;nbsp;i&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;topColumn.StartColIndex;&amp;nbsp;i&lt;/span&gt;&lt;span style="color: #000000"&gt;++&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;x&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dgv.Columns[i].Width;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;for&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;int&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;i&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;topColumn.StartColIndex;&amp;nbsp;i&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;lt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;topColumn.EndColIndex;&amp;nbsp;i&lt;/span&gt;&lt;span style="color: #000000"&gt;++&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dgv.Columns[i].Width;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;width&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;-=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;y&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(dgv.ColumnHeadersHeight&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;4&lt;/span&gt;&lt;span style="color: #000000"&gt;)&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;*&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(topColumn.DeepCount&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;topColumn.EndDeepIndex)&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;/&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;topColumn.DeepCount;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Rectangle&amp;nbsp;rec&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Rectangle(x,&amp;nbsp;y,&amp;nbsp;width,&amp;nbsp;height);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Color&amp;nbsp;bkClr&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dgv.ColumnHeadersDefaultCellStyle.BackColor;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(backColor&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;!=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;null&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bkClr&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;backColor;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;e.Graphics.FillRectangle(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;SolidBrush(bkClr),&amp;nbsp;rec);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(topColumn.StartDeepIndex&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;!=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ControlPaint.DrawBorder(e.Graphics,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;Rectangle(x&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;y&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;height&lt;/span&gt;&lt;span style="color: #000000"&gt;-&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;width&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;),&amp;nbsp;SystemColors.ControlLight,&amp;nbsp;ButtonBorderStyle.Inset);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;StringFormat&amp;nbsp;format1&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StringFormat();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format1.Trimming&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StringTrimming.EllipsisWord;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format1.Alignment&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StringAlignment.Center;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;format1.LineAlignment&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;StringAlignment.Center;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Color&amp;nbsp;foClr&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dgv.ColumnHeadersDefaultCellStyle.ForeColor;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;if&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;(foreColor&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;!=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;null&lt;/span&gt;&lt;span style="color: #000000"&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;foClr&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;foreColor;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;e.Graphics.DrawString(title,&amp;nbsp;dgv.ColumnHeadersDefaultCellStyle.Font,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;SolidBrush(foClr),&amp;nbsp;rec,&amp;nbsp;format1);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;3.添加DataGridView的Paint事件,並在事件中調用SetColTitle函數繪製表頭&lt;/p&gt;&lt;div style="border-right: windowtext 0.5pt solid; padding-right: 5.4pt; border-top: windowtext 0.5pt solid; padding-left: 5.4pt;background: #e6e6e6; padding-bottom: 4px; border-left: windowtext 0.5pt solid; width: 95%; word-break: break-all; padding-top: 4px; border-bottom: windowtext 0.5pt solid"&gt;&lt;div&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.dataGridView1.Paint&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;+=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;System.Windows.Forms.PaintEventHandler(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;this&lt;/span&gt;&lt;span style="color: #000000"&gt;.dataGridView1_Paint);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;private&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;void&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;dataGridView1_Paint(&lt;/span&gt;&lt;span style="color: #0000ff"&gt;object&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;sender,&amp;nbsp;PaintEventArgs&amp;nbsp;e)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HeaderCell&amp;nbsp;h&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle((DataGridView)sender,&amp;nbsp;h,&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;第一列&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;Color.LightGreen,&amp;nbsp;Color.Red);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HeaderCell&amp;nbsp;hc&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle((DataGridView)sender,&amp;nbsp;hc,&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;第一列&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;,Color.LightGreen,Color.Red);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HeaderCell&amp;nbsp;hc1&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle((DataGridView)sender,&amp;nbsp;hc1,&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;分列1&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;Color.Purple,&amp;nbsp;Color.Red);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HeaderCell&amp;nbsp;hc2&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle((DataGridView)sender,&amp;nbsp;hc2,&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;分列2&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;Color.Pink,&amp;nbsp;Color.Red);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;HeaderCell&amp;nbsp;hc3&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;=&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;new&lt;/span&gt;&lt;span style="color: #000000"&gt;&amp;nbsp;HeaderCell(&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;1&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;2&lt;/span&gt;&lt;span style="color: #000000"&gt;,&lt;/span&gt;&lt;span style="color: #000000"&gt;3&lt;/span&gt;&lt;span style="color: #000000"&gt;);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;SetColTitle((DataGridView)sender,&amp;nbsp;hc3,&amp;nbsp;e,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;分列&lt;/span&gt;&lt;span style="color: #000000"&gt;"&lt;/span&gt;&lt;span style="color: #000000"&gt;,&amp;nbsp;Color.LightGreen,&amp;nbsp;Color.Red);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;4.說明:這個方法做出來的效果現在還是不能用,當調整表頭寬度時和出滾動條時刷新有問題.以後再試研究看.如果還是不行,那就用CellPainting事件做做看吧,再不行,就用Tree加DataGridView做成控件的形式試試.&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2247978.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2011/11/14/2247978.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/chenbg2001/archive/2011/10/24/2223118.html</id><title type="text">在线手机WAP模拟器或软件，用电脑IE浏览器在线浏览手机wap网站</title><summary type="text">先介绍一下什么是WAP浏览器。WAP浏览器，WAP Browser，又叫WAP微型浏览器，是用在手机或pda等设备上浏览WAP站点的工具。它与PC上的web浏览器比如ie、firefox相似。但由于手机wap站点用的是WML之类的语言，所以web浏览器并不能直接浏览WAP站点，因为web站点用的html之类的语言。 如果想直接在电脑PC浏览WAP站点，必须使用电脑pc在线wap站点模拟器或客户端模拟器软件。这样手机用户浏览WAP站点不再需要使用手机，也不再花昂贵的GPRS流量费。 当然，并不是所有的WAP站点都访问顺利，因为有些WAP站点是收费网站，它们屏蔽了非手机访问。另外某些站点在无...</summary><published>2011-10-24T13:08:00Z</published><updated>2011-10-24T13:08:00Z</updated><author><name>追梦人RUBY</name><uri>http://www.cnblogs.com/chenbg2001/</uri></author><link rel="alternate" href="http://www.cnblogs.com/chenbg2001/archive/2011/10/24/2223118.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/chenbg2001/archive/2011/10/24/2223118.html"/><content type="html">先介绍一下什么是WAP浏览器。WAP浏览器，WAP Browser，又叫WAP微型浏览器，是用在手机或pda等设备上浏览WAP站点的工具。它与PC上的web浏览器比如ie、firefox相似。但由于手机wap站点用的是WML之类的语言，所以web浏览器并不能直接浏览WAP站点，因为web站点用的html之类的语言。 &lt;p&gt;如果想直接在电脑PC浏览WAP站点，必须使用电脑pc在线wap站点模拟器或客户端模拟器软件。这样手机用户浏览WAP站点不再需要使用手机，也不再花昂贵的GPRS流量费。&lt;/p&gt;&lt;p&gt;当然，并不是所有的WAP站点都访问顺利，因为有些WAP站点是收费网站，它们屏蔽了非手机访问。另外某些站点在无法获取终端手机号码或无法收取费用时，也不允许该终端访问。&lt;/p&gt;&lt;p&gt;这些WAP模拟器，实现浏览wap站点的基本原理是：通过把WAP网站WML格式的网页编译成可供电脑解析的HTML或xml之类的格式, 从而实现浏览WAP网站，用户不需要透过无线装置，直接用电脑PC即可。也有人把他们叫做：pc上的Wap浏览器,在线WAP浏览器或WAP在线模拟器。飞龙觉得wap站点主要为手机等无线设备而做，用电脑pc浏览其实是模拟的过程，所以&amp;#8220;WAP模拟器&amp;#8221;最准确。&lt;/p&gt;&lt;p&gt;基于PC的&amp;#8220;&lt;strong&gt;WAP模拟器&lt;/strong&gt;&amp;#8221;有很多，飞龙给他们分为三种类型：&lt;br /&gt;1.不用下载安装的在线wap模拟工具性网页&lt;br /&gt;2.需下载安装的wap模拟式浏览器&lt;br /&gt;3.需下载安装的wap模拟器软件&lt;/p&gt;&lt;p&gt;&lt;strong&gt;一 不用下载安装的在线wap站点模拟器网页&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;国内的：&lt;br /&gt;1.泡泡通wap浏览器：&lt;a href="http://so.pp.cn/phone/general.jsp"&gt;http://so.pp.cn/phone/general.jsp&lt;/a&gt;&lt;br /&gt;2.百度无线：&lt;a href="http://wireless.baidu.com/"&gt;http://wireless.baidu.com/&lt;/a&gt;&lt;br /&gt;3.UU视窗: &lt;a href="http://win.uucun.com/"&gt;http://win.uucun.com/&lt;/a&gt;&lt;br /&gt;4.上方网wap浏览器: &lt;a href="http://w2w.spforum.net/"&gt;http://w2w.spforum.net/&lt;/a&gt;&lt;br /&gt;5.倾城视窗: &lt;a href="http://ie.qcmw.com/"&gt;http://ie.qcmw.com/&lt;/a&gt;&lt;br /&gt;6.手机公社：&lt;a href="http://ada.timewe.net/"&gt;http://ada.timewe.net/&lt;/a&gt;&lt;br /&gt;7.芋头网WAP在线: &lt;a href="http://www.yutou.com/"&gt;http://www.yutou.com/&lt;/a&gt;&lt;br /&gt;8.儒豹WAP在线：&lt;a href="http://www.roboo.com/"&gt;http://www.roboo.com/&lt;/a&gt;&lt;br /&gt;9.WAP之家在线：&lt;a href="http://www.wapzj.com/"&gt;http://www.wapzj.com/&lt;/a&gt;&lt;br /&gt;10.http://www.pctowap.com/Wapurl/Index.html&lt;br /&gt;&lt;br /&gt;国外的：&lt;br /&gt;1、&lt;a href="http://3gbrowser.cn/cn/"&gt;http://3gbrowser.cn/cn/&lt;/a&gt;&lt;br /&gt;2、wapsilon.com 打不开了。&lt;/p&gt;&lt;p&gt;&lt;strong&gt;二 需下载安装的wap模拟式浏览器&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1.把&lt;strong&gt;firefox&lt;/strong&gt;改造为在线wap站点模拟器&lt;br /&gt;Firefox支持WEB及丰富的插件扩展，附加插件wmlbrowser能实现对WAP页面浏览支持。&lt;br /&gt;先下载安装firefox，然后下载安装firefox附加插件wmlbrowser，&lt;/p&gt;&lt;p&gt;下载 firefox浏览器&lt;br /&gt;&lt;a href="http://feilong.org/firefox-feilong"&gt;http://feilong.org/firefox-feilong&lt;/a&gt;&lt;br /&gt;下载 wmlbrowser&lt;br /&gt;&lt;a href="https://addons.mozilla.org/zh-CN/firefox/addon/62"&gt;https://addons.mozilla.org/zh-CN/firefox/addon/62&lt;/a&gt;&lt;/p&gt;&lt;p&gt;2.提供WAP和WEB的双重浏览支持的Opera浏览器 &lt;br /&gt;Opera起初是网络浏览器，新版本Opera增加大量功能。Opera小巧而功能强大，可以跨平台跨操作系统地浏览网页、RSS、幻灯显示（Operashow）。此外Opera还有手机用版本。它支持W3C标准 ，使用者控制网页结构和字体。&lt;br /&gt;最让飞龙惊喜的是，输入&amp;#8220;http://wap.baidu.com/&amp;#8221;，你可以看到什么？Opera浏览器提供WAP和WEB的双重支持！电脑pc可以直接浏览手机wap站点，飞龙赞真棒！opera详细下载介绍和下载：&lt;a href="http://feilong.org/opera-feilong"&gt;http://feilong.org/opera-feilong&lt;/a&gt;&lt;/p&gt;&lt;p&gt;3. 超强wap浏览器&lt;br /&gt;即便您没有手机或手机没有开通wap服务，你也一样在您的电脑上浏览wap网页的内容。下载地址：&lt;a href="http://www.cngr.cn/dir/207/218/200606308218.html"&gt;http://www.cngr.cn/dir/207/218/200606308218.html&lt;/a&gt; ；超强wap浏览器注册码：3QWR25AFW35AR9W&amp;nbsp;&amp;nbsp;&amp;nbsp; 或电脑上wap浏览器 ：&lt;a href="http://www.xdowns.com/soft/1/2/2008/Soft_42093.html"&gt;http://www.xdowns.com/soft/1/2/2008/Soft_42093.html&lt;/a&gt;&amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;想节约GPRS流量？想节约手机上网时间？怕中手机病毒？怕不小心掉进包月陷阱？想下载2M的手机游戏又心疼流量？现在您不用担心这些问题了！有了《电脑上WAP浏览器》，您可以在任何一台接入互联网的电脑上使用它，并且完全免费地、快速地浏览手机WAP网站，下载您喜欢的超大容量的手机软件、手机游戏和手机主题等原本只有手机才能访问的资源，而不必担心任何GPRS流量问题！使用本软件不需要您的手机号码，甚至根本不用管您是否有手机，只需要输入手机wap网址，轻轻一点，即可浏览！&lt;/p&gt;&lt;p&gt;&lt;strong&gt;三 需下载安装的wap模拟器小软件&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1.模拟手机形状的M3Gate V1.2软件&lt;br /&gt;使用者不需要无线装置，M3Gate让您直接在PC中观看WML及WMLScript标记语言的WAP站点。目前这个手机模拟器好像停止开发和升级，因为他的站点域名 M3Gate.com 没有官方技术信息，只有域名停靠广告。大概夭折了可惜。大部分在线或客户端wap浏览器都采用他的内核。&lt;a href="http://www.skycn.com/soft/34.html"&gt;http://www.skycn.com/soft/34.html&lt;/a&gt;；&lt;a href="http://www.skysoftware.org/software/html/34/34.html"&gt;http://www.skysoftware.org/software/html/34/34.html&lt;/a&gt; ；绿色版：&lt;a href="http://www.yarku.com/soft/network/12/238.html"&gt;http://www.yarku.com/soft/network/12/238.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;4.WWB在线浏览器&lt;br /&gt;WWB全称WAP在线浏览器（WAP Web Browser），基于优秀WAP模拟器M3gate组件开发，让您以WEB网站的速度浏览WAP网站，本软件可以无任何限制地免费给大家使用。软件大小: 1 MB&lt;br /&gt;WWB在线浏览器下载地址：&lt;a href="http://www.intwap.com/softwares/pages/699.html"&gt;http://www.intwap.com/softwares/pages/699.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;5.手机浏览器 UCWEB 下载&lt;br /&gt;UCWEB通过移动的CMWAP或CMNET接入访问互联网，支持标准的WWW与WAP网站。集成了Baidu/Google/Yicha三大搜索引擎和搜图片、搜音乐两个特色引擎。而&amp;#8220;我的地盘&amp;#8221;中则带给您各种互联网的应用：邮件、RSS、网络硬盘和书签同步，这些功能让你的互联网生活变得更加丰富多彩。&lt;br /&gt;UCWEB手机浏览器是否收费？UCWEB的下载和使用均为免费.uCWEB在使用的过程中会产生一些GPRS网络流量费用，这部分的费用将直接由您的网络服务提供商收取。详情请咨询您当地的网络服务提供商。&lt;br /&gt;UCWEB手机浏览器下载地址：&lt;a href="http://www.intwap.com/special/ucweb/"&gt;http://www.intwap.com/special/ucweb/&lt;/a&gt;&lt;br /&gt;或者ucweb官方网站：&lt;a href="http://www.ucweb.com/index.shtml"&gt;http://www.ucweb.com/index.shtml&lt;/a&gt;&lt;/p&gt;&lt;p&gt;6.中文WAP浏览器Wap Displayer V1.5&lt;br /&gt;这个好像效果不太理想，收集在案。下载地址：&lt;a href="http://download.enet.com.cn/speed/toftp.php?fname=010022005092702"&gt;http://download.enet.com.cn/speed/toftp.php?fname=010022005092702&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;四 最后简单介绍几个可以在手机上用的wap浏览器&lt;/strong&gt;，和飞龙的本篇日志主旨关系不大，如果想知道有什么办法建设wap网站，可以参考这篇日志：收集一些&lt;strong&gt;手机wap建站系统&lt;/strong&gt;软件或工具网站 &lt;a href="http://feilong.org/wap-cms-mobi"&gt;http://feilong.org/wap-cms-mobi&lt;/a&gt;&lt;/p&gt;&lt;p&gt;1.提&lt;strong&gt;供WAP和WEB的双重支持&lt;/strong&gt;的Opera mini 浏览器&lt;br /&gt;Opera手机用版本。下载地址：&lt;a href="http://www.opera.com/download/"&gt;http://www.opera.com/download/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;2. 国内MP公司的&lt;strong&gt;WAP或WEB自适应&lt;/strong&gt;浏览器&lt;br /&gt;手机用版本。第二代手机浏览器，即是WAP手机浏览器又是WEB浏览器。飞龙觉得和opera的功能类似，并且网页设计效果都有点雷同哈哈。&lt;br /&gt;MP为全球大量的KJAVA手机、智能手机、PDA用户提供全互联网浏览体验。使手机变电脑,支持CMWAP|CMNET连接方式,只要有手机信号的地方都可以上网,是出差旅行、候车等人时进行上网、收发邮箱、聊天游戏的好帮手。下载地址：&lt;a href="http://www.mponly.com/download/"&gt;http://www.mponly.com/download/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;3.手机网页浏览器UCWEB v6.0 Java MIDP2.0 通用版本&lt;br /&gt;下载地址：&lt;a href="http://www.intwap.com/softwares/pages/1008.html"&gt;http://www.intwap.com/softwares/pages/1008.html&lt;/a&gt;&lt;/p&gt;&lt;p&gt;五 参考资料：&lt;br /&gt;1. &lt;a href="http://www.intwap.com/softwares/pages/699.html"&gt;http://www.intwap.com/softwares/pages/699.html&lt;/a&gt;&lt;br /&gt;2. &lt;a href="http://feilong.org/wap-cms-mobi"&gt;http://feilong.org/wap-cms-mobi&lt;/a&gt;&lt;br /&gt;3. &lt;a href="http://bicyle.blog.hexun.com/1503820_d.html"&gt;http://bicyle.blog.hexun.com/1503820_d.html&lt;/a&gt;&lt;br /&gt;4. &lt;a href="http://feilong.org/feilong-mofuse-mobi-feilong-org-wap-rss"&gt;http://feilong.org/feilong-mofuse-mobi-feilong-org-wap-rss&lt;/a&gt;&lt;br /&gt;5. &lt;a href="http://www.maqingxi.com/article.asp?id=1062"&gt;http://www.maqingxi.com/article.asp?id=1062&lt;/a&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/chenbg2001/aggbug/2223118.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/chenbg2001/archive/2011/10/24/2223118.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
