<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_学习---工作笔记</title><subtitle type="text"/><id>http://feed.cnblogs.com/blog/u/42138/rss</id><updated>2011-04-21T06:44:24Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><generator>feed.cnblogs.com</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/42138/rss"/><entry><id>http://www.cnblogs.com/duncannjm/archive/2011/03/01/1967857.html</id><title type="text">关于Dataset批量更新数据的实例方法</title><summary type="text">帮同学做个小东西，某局的案件登记表（Excel表）。我同学是专门负责维护该表的，数据量一大就不好查询，而且查询定位不精确，所以该同学就委托我给他做个小数据库系统。要求，1：能将现有的Excel数据导入数据（想偷懒），2：方便查询。就这么两个功能，我很爽快地答应了。（主要讲Excel导入）于是该同学就将登记表发给我，打开一看，靠，这么多字段，如果写Sql语句插入或更新的话那还不把我折腾死啊，而且还容易出错。我想了下不能用硬写SQL语句这种方法，而且还要判断记录是否存在，很烦人。我想了下之前看过关于DataSet批量更新数据的方法，再回顾回顾。研究了一番用DataSet批量更新数据是可行的，而且也</summary><published>2011-03-01T04:37:00Z</published><updated>2011-03-01T04:37:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2011/03/01/1967857.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2011/03/01/1967857.html"/><content type="html">&lt;div style="line-height: 2em; margin-bottom: 10px;"&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "pub-0561876657933574";/* 728x90, 创建于 10-3-12 */google_ad_slot = "2378166141";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;/div&gt;&lt;div style="text-indent: 2em; line-height: 2em; margin-bottom: 20px;"&gt;帮同学做个小东西，某局的案件登记表（Excel表）。我同学是专门负责维护该表的，数据量一大就不好查询，而且查询定位不精确，所以该同学就委托我给他做个小数据库系统。要求，1：能将现有的Excel数据导入数据（想偷懒），2：方便查询。就这么两个功能，我很爽快地答应了。（主要讲Excel导入）于是该同学就将登记表发给我，打开一看，靠，这么多字段，如果写Sql语句插入或更新的话那还不把我折腾死啊，而且还容易出错。我想了下不能用硬写SQL语句这种方法，而且还要判断记录是否存在，很烦人。我想了下之前看过关于DataSet批量更新数据的方法，再回顾回顾。研究了一番用DataSet批量更新数据是可行的，而且也能节约写SQL的时间。在网上搜了一番，都没有能实际解决问题的现成方法，都是有这样或那样的问题，于是我就一边在网上求救一边看MSDN帮助文档终于解决啦，现将方法分享出来，希望能有所帮助，我会在方法中写上注释的，有不明白的请给我留言。注：数据库用的是Access。&lt;/div&gt;&lt;div style="margin-bottom: 20px;"&gt;&lt;div align="center"&gt;&lt;img alt="流程" src="http://images.cnblogs.com/cnblogs_com/duncannjm/%E6%B5%81%E7%A8%8B.jpg" width="544" height="538" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding:10px;"&gt;&lt;div&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;更新DataSet数据至数据库中，注意数据表结构必须与Exel结构相同&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="ds"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;ds盛放从Excel表中读取的数据&lt;/span&gt;&lt;span style="color: #808080;"&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="sql"&amp;gt;&lt;/span&gt;&lt;span style="color: #008000;"&gt;用于查询数据库记录的语句&lt;/span&gt;&lt;span style="color: #808080;"&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;returns&amp;gt;&amp;lt;/returns&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;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;static&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;bool&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;UpdataDataSet(DataSet&amp;nbsp;ds,&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;string&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;sql)&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;using&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;(OleDbConnection&amp;nbsp;connection&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;OleDbConnection(PubConstant.ConnectionString))&lt;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;connection.Open();&lt;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;DataTable&amp;nbsp;tempDT&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;DataTable();&lt;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: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;创建适配器&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OleDbDataAdapter&amp;nbsp;dap&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;OleDbDataAdapter(sql,&amp;nbsp;connection);&lt;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: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;创建&amp;nbsp;用于更改与关联数据库的单表命令&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;OleDbCommandBuilder&amp;nbsp;cb&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;OleDbCommandBuilder(dap);&lt;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: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;以下两处的[&amp;nbsp;]&amp;nbsp;最好加上，否则可能会出现莫名的错误，就相当于给字段名、或表名加[]&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cb.QuotePrefix&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: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;[&lt;/span&gt;&lt;span style="color: #800000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;cb.QuoteSuffix&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: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;]&lt;/span&gt;&lt;span style="color: #800000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;try&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;&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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;装载，根据SQL语句从数据库里读来数据，&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dap.Fill(tempDT);&lt;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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;设置DataTable主键字段&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tempDT.PrimaryKey&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;DataColumn[]&amp;nbsp;{&amp;nbsp;tempDT.Columns[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;勘验号&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;]&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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;取DataSet中表1的数据，此处的dsTable是用于盛放从Excel表中读出的数据&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DataTable&amp;nbsp;dsTable&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;ds.Tables[&lt;/span&gt;&lt;span style="color: #800080;"&gt;0&lt;/span&gt;&lt;span style="color: #000000;"&gt;];&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;遍历dsTable中的每一行数据&lt;/span&gt;&lt;span style="color: #008000;"&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;&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;foreach&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;(DataRow&amp;nbsp;dr&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;in&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;dsTable.Rows)&lt;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;{&lt;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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;在tempDT中查找数据库中是否已经存在该条数据&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;DataRow&amp;nbsp;modyRow&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;tempDT.Rows.Find(dr[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;勘验号&lt;/span&gt;&lt;span style="color: #800000;"&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;&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: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;如果数据库已经存在该行，则修改记录，不进行插入&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&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;(modyRow&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;&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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;设置该行记录为&amp;#8220;已修改&amp;#8221;状态，次操作必须。&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tempDT.Rows.Find(dr[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;勘验号&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;]).SetModified();&lt;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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;重新给该记录赋值&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tempDT.Rows.Find(dr[&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #800000;"&gt;勘验号&lt;/span&gt;&lt;span style="color: #800000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;]).ItemArray&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;dr.ItemArray;&lt;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;}&lt;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;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;else&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;&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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;新增&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;tempDT.Rows.Add(dr.ItemArray);&lt;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;}&lt;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;}&lt;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;&lt;/span&gt;&lt;span style="color: #008000;"&gt;//&lt;/span&gt;&lt;span style="color: #008000;"&gt;执行操作，这样就不用写SQL语句，它自己会操作&lt;/span&gt;&lt;span style="color: #008000;"&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;dap.Update(tempDT);&lt;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;&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;true&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;&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;catch&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;(Exception&amp;nbsp;ex)&lt;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;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;Console.Write(ex.Message);&lt;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;&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;false&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;&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;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span style="color: #008000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/duncannjm/aggbug/1967857.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/duncannjm/archive/2011/03/01/1967857.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/12/14/1905472.html</id><title type="text">前段时间的面试经历及总结</title><summary type="text">自己接的一个项目已经完成了，劳累了几个月终于可以轻松下，项目的事就不谈了，总之很累、让我很无语。我是一个搞技术的我没有能力去外面拉单子，也不敢去拉较大的单子毕竟是很有风险的，没有办法我要吃饭只得继续上班，下面就谈下我这段时间的面试经历吧！其实我的技术很一般，准确的说应该是就某一方面研究的深度不够，但是我也有我的必杀技我懂得的技术比较全面（Web方面的），我一个人能完完全全的整出一个系统或网站出来（小型的项目，请勿见笑），包括页面布局、调浏览器兼容性、JS、项目后台代码以及SQL。我见过很多程序员，他们只会写后台代码、SQL语句，JS和页面布局基本不会，甚至把项目部署至服务器都不会（部署至IIS</summary><published>2010-12-14T05:49:00Z</published><updated>2010-12-14T05:49:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/12/14/1905472.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/12/14/1905472.html"/><content type="html">&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;自己接的一个项目已经完成了，劳累了几个月终于可以轻松下，项目的事就不谈了，总之很累、让我很无语。我是一个搞技术的我没有能力去外面拉单子，也不敢去拉较大的单子毕竟是很有风险的，没有办法我要吃饭只得继续上班，下面就谈下我这段时间的面试经历吧！&lt;/p&gt;&lt;p&gt;其实我的技术很一般，准确的说应该是就某一方面研究的深度不够，但是我也有我的必杀技我懂得的技术比较全面（Web方面的），我一个人能完完全全的整出一个系统或网站出来（小型的项目，请勿见笑），包括页面布局、调浏览器兼容性、JS、项目后台代码以及SQL。我见过很多程序员，他们只会写后台代码、SQL语句，JS和页面布局基本不会，甚至把项目部署至服务器都不会（部署至IIS 6.0）。我觉得再怎么专研某一方面，其他相关的东西也要清楚吧。这个我说到这里，每个人的观点不同，我自己也觉得很多东西要深入钻研，不要以为功能实现了就OK。下面说说前几天面试的经历吧，总共面试了7家拿到了5个offer，挺自信的。&lt;/p&gt;&lt;p&gt;第一家：面试我的人感觉年龄和我一般大，聊起来相对轻松些。主要问了些数据库优化、C#中List和数组方面的知识。感觉这家公司很怪都没有怎么介绍过公司方面的情况，待遇、作息时间都没有谈第二天就让我去上班了，第二天我去了公司才知道他们周末要上班，我倒，我立即跟经理说了我适应不了这份工作，这时经理才跟我谈待遇的问题，稍微聊了下最后我还是委婉地拒绝了。&lt;/p&gt;&lt;p&gt;第二家：这个公司貌似看起来很光鲜，所在的写字楼也在城市的绝对中心，环境挺不错。首先进行了笔试，笔试完了之后就是重复的自我介绍，接下来就谈了下技术、工作规划方面的事情。技术经理在问我技术方面问题的时候我发觉他们找错人了，他们要找的是流媒体方面的人才，汗！结果就不用多说了。&lt;/p&gt;&lt;p&gt;第三家：这个公司我的印象特别深刻，公司的环境很不错尤其是那栋写字楼，进搂之后我以为我走错地方了，看起来像个4星级酒店连做个电梯都有专门的人给你按，最后按电梯的人会给你说进楼层们的密码。到了公司之后共有三个人来面试（笔试），行政工作完全没有做到位，我最先来却让我最后一个面试，最后行政说是顺序放错了。技术经理看起来是一个很能干的人，面试也聊的挺不错，主要问的是网站并发处理、用户信息加密方面的问题，最后他还看了我之前做过的一些项目。当场就谈好了，技术经理也说了能够拿到我期望的工资，然后他就让我和老板谈。这个老板看起来非常的老奸巨猾，在谈了之后他给我足足降了近1000大洋的工资而且还说加班没有加班工资，说话说得很阴险。第二个星期一他们让我去上班，我直接了给回了。&lt;/p&gt;&lt;p&gt;第四家：公司在三环路边上，周围有点荒凉都是些厂房。面试我的技术经理是搞Java的也没有谈论什么.Net方面的知识，知识对js、数据库、页面布局方面提了几个问题。在谈的过程中我说了句让他很无语的话，我说Java日渐没落，.Net蒸蒸日上。事后想起来觉得这样好得罪人呀。后面另一个经理（非技术）就给讲述了下工作内容、工作地点、待遇等方面的事情。这家公司挺好的我很想去的，就是要经常全国范围内出差。&lt;/p&gt;&lt;p&gt;这样说浪费大家的时间，总体上描述其他的面试吧。第五家是人不要我，我的能力不够格。第六家就是我现在上班的这个地方，感觉不错只不过不是搞Web方面的，根据这几天的情况来看也能学习到不少东西，他们讲究的是循序渐进而不是一进来就要你马上弄点什么东西出来。让我最欣慰的是公司毫不犹豫的接受了我的薪资要求，而且还在我要求的基础上加了些。按照以往的经历老板都会和你在薪酬方面进行一番讨价还价的，就像我们平时在市场买菜一样。第七家：这家公司很怪，先是行政打电话过来问我的期望薪资，第二天又打电话过来让我星期五去面试，星期四下午的时候又打电话过来提醒我第二天要去面试。我在去面试的公交车上行政又给我打了两次电话问我到哪儿了，我都一度怀疑是不是什么传销公司了。面试我的人是大名鼎鼎的田洪川，相信园子里的朋友们一定很熟悉他吧。和田老师交流了之后又和HR交流了一番，这个公司非常不错，推荐。由于我住的地儿离公司太远了，后面综合考虑了下我还是选择了第六家就是我现在上班的公司。&lt;/p&gt;&lt;p&gt;一直以为年底不好找工作，我也是抱着去试试的态度找的，没有想到年底也有这么多的工作岗位。个人认为求职.Net软件工程师事先应做好准备，如多在网上看些笔试题，很多公司的笔试题都是在这些笔试题里找的。笔试一般都会涉及：引用类型与值类型、委托、Webservice、SQL语句、冒泡算法、数组与List方面的知识，只要你多看点相关的书籍一定能搞定的。还有就是在面试的时候一定要自信，自己的谈吐要自然，不会就不会不要东拉西扯的。&lt;/p&gt;&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "pub-0561876657933574";/* 728x15, 创建于 10-3-12 */google_ad_slot = "8099312898";google_ad_width = 728;google_ad_height = 15;//--&gt;&lt;/script&gt;&lt;script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt; &lt;img src="http://www.cnblogs.com/duncannjm/aggbug/1905472.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/duncannjm/archive/2010/12/14/1905472.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/06/07/1752628.html</id><title type="text">新的环境，新的思想</title><summary type="text">在新的环境中继续学习...</summary><published>2010-06-07T01:21:00Z</published><updated>2010-06-07T01:21:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/06/07/1752628.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/06/07/1752628.html"/><content type="html">&lt;script type="text/javascript"&gt;&lt;!--google_ad_client = "pub-0561876657933574";/* 728x90, 创建于 10-3-12 */google_ad_slot = "2378166141";google_ad_width = 728;google_ad_height = 90;//--&gt;&lt;/script&gt;&lt;script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"&gt;&lt;/script&gt;&lt;p&gt;&lt;span style="font-family: 宋体; font-size: 12.8pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;新到一个开发团队中，发现在很多地方都与他们格格不入，如：编程风格，思想风格等等。而且最让我郁闷的是他们只是一味地让我的思想和风格和现有的模式保持一致，固然这样很好，不会让现有的项目看起来那么杂乱无章，但是我觉得他们有很多地方设计的都不是很合理，比如他们把所有的数据，业务操作都是采用静态方法封装的，当我问他们为什么这样做时，他们的回答竟是--可以不用实例化就直接调用,哦god，这样滥用静态方法会导致系统性能下降，因为系统在运行时不管有没有调用这样方法都会把它载入内存，而不是按需分配。还有他们在数据操作中一般是不用存储过程的，除了执行速度实在太慢了他们才会采用存储过称，每次涉及到数据分页时都是直接在方法中用SQL语句的，连基本的封装都不进行，每次新建一个设计数据分页操作的方法时都还要写或者拷贝一大串SQL语句，看起来是那么的刺眼。我每次用存储过程分页时他们都会勒令我用原有的SQL语句分页方式，当我问为什么时回答竟然是要考虑到不会用存储过程的成员，我就纳闷难道他们永远都停留在那个水平吗？再说了也不是很难，在存储过程中我注释可是写的清清楚楚的，如果实在是不会那只能说明他OUT了。&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family: 宋体; font-size: 12.8pt"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;这些天我在改几个报表页面，我越发觉得存储过程是那么的重要。数据操作都是直接封装在存储过程中的，程序后台只需传入参数直接调用存储过程，每次修改报表时只需改动存储过程即可，而不用改动程序然后再预编译再重新发布，这样的话会节省很多额外的时间，也不用暂停正在运行的程序重新发布。其实我也不是写存储过程的高手，但是可以慢慢学逐步提高自己。之前做报表时我一直用的是视图将几个关联表连接起来，说实话视图拖起来快而且看起来也直观但是它的效率就不是那么高了，这种方法虽然很快捷但是只能用于小数据量的系统中，如果要想在大数据量的系统中将关联表的数据按照筛选条件快速导出报表的话建议用存储过程。存储过程写起来的确很不爽，但是用起来感觉就不一样了特别是在大数据量的系统中，写得好的话可以让查询效率提升很多。你可以在存储过程中优化SQL语句，可以建临时表将在过程中经常用到的数据插入到临时表中，与数据库中的实际存在表相比，临时表的读取速度要快得多，至于为什么去Google搜索下你就知道。如果你是数据优化高手的话你的薪酬绝对不菲，哪怕你写程序能力不是很强，一般情况下懂得数据优化的DBA待遇绝对要比程序员待遇好得多，建议多看点数据优化方面的教程，个人认为不要仅仅局限于code中，不要认为程序功能实现了你OK了，有的时候也去研究研究底层数据优化也能提高你的能力水平，也许你会惊喜的发现原来有还有一片天空等待你的到来。&lt;/span&gt;&lt;/p&gt;   &lt;img src="http://www.cnblogs.com/duncannjm/aggbug/1752628.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/duncannjm/archive/2010/06/07/1752628.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/04/06/1705245.html</id><title type="text">Oracle实现自增字段</title><summary type="text">Oracle和MS SQL不同，默认是没有自增列的，但是可以通过创建序列和触发器的方式来创建自增列字段，下面我就讲述下如何创建自增列字段（Oracle 11g版本）。1.创建一个TestTable表，[代码]2.创建一个序列（Sequence），命名为SEQ（建议用自带的可视化工具创建 ‘DUNCAN’是我登陆的用户名，不要全盘复制）。[代码]INCREMENTBY1STA...</summary><published>2010-04-06T04:49:00Z</published><updated>2010-04-06T04:49:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/04/06/1705245.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/04/06/1705245.html"/><content type="text">Oracle和MS SQL不同，默认是没有自增列的，但是可以通过创建序列和触发器的方式来创建自增列字段，下面我就讲述下如何创建自增列字段（Oracle 11g版本）。1.创建一个TestTable表，[代码]2.创建一个序列（Sequence），命名为SEQ（建议用自带的可视化工具创建 ‘DUNCAN’是我登陆的用户名，不要全盘复制）。[代码]INCREMENTBY1STA...</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/29/1699807.html</id><title type="text">如何重新成功安装Oracle的解决办法</title><summary type="text">我用的版本是Oracle 11g，因为种种原因我把Oracle卸了重新安装，可是安装了几次都不成功（我也是对照网上的办法来弄的），每次失败的地方都是在创建和复制数据库的时候，总是提示什么“写系统日志文件错误”之类的东西，尝试了几次终于搞定了，下面就分享下吧！1、开始－＞设置－＞控制面板－＞管理工具－＞服务停止所有Oracle服务。2、开始－＞程序－＞Oracle &amp;...</summary><published>2010-03-29T09:22:00Z</published><updated>2010-03-29T09:22:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/29/1699807.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/29/1699807.html"/><content type="text">我用的版本是Oracle 11g，因为种种原因我把Oracle卸了重新安装，可是安装了几次都不成功（我也是对照网上的办法来弄的），每次失败的地方都是在创建和复制数据库的时候，总是提示什么“写系统日志文件错误”之类的东西，尝试了几次终于搞定了，下面就分享下吧！1、开始－＞设置－＞控制面板－＞管理工具－＞服务停止所有Oracle服务。2、开始－＞程序－＞Oracle &amp;...</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/24/1693542.html</id><title type="text">ASP.NET操作Word的权限配置（转）</title><summary type="text">ASP.NET账号在默认情况下是没有权限操作Microsoft Office对象的，如果不进行权限的配置，代码会抛出类似以下的异常：检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败，原因是出现以下错误: 80070005。这样给Asp.NET操作Microsoft Office对象带来了一定的困难。但我们还是要想办法...</summary><published>2010-03-24T02:47:00Z</published><updated>2010-03-24T02:47:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/24/1693542.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/24/1693542.html"/><content type="text">ASP.NET账号在默认情况下是没有权限操作Microsoft Office对象的，如果不进行权限的配置，代码会抛出类似以下的异常：检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败，原因是出现以下错误: 80070005。这样给Asp.NET操作Microsoft Office对象带来了一定的困难。但我们还是要想办法...</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/23/1692720.html</id><title type="text">&amp;quot;添加/删除Windows组件&amp;quot;里没有IIS选项的解决办法</title><summary type="text">今天装了一个GHO版的Win 2003系统，装完之后发现里面没有默认安装IIS，更惊奇的是在“添加/删除Windows组件”也没有IIS选项，在网上学习了会终于搞定了。 1：开始–&gt;运行，输入 C:\windows\inf\sysoc.inf，回车； 在打开的sysoc.inf文件中，找到 [Components]的小节，看看下面是否有 “ii...</summary><published>2010-03-23T09:23:00Z</published><updated>2010-03-23T09:23:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/23/1692720.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/23/1692720.html"/><content type="text">今天装了一个GHO版的Win 2003系统，装完之后发现里面没有默认安装IIS，更惊奇的是在“添加/删除Windows组件”也没有IIS选项，在网上学习了会终于搞定了。 1：开始–&gt;运行，输入 C:\windows\inf\sysoc.inf，回车； 在打开的sysoc.inf文件中，找到 [Components]的小节，看看下面是否有 “ii...</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/18/1688657.html</id><title type="text">小议Access与MS SQL的差别</title><summary type="text">这段时间没有什么项目做比较闲，但隔三岔五的老板又会安排我做点小事情，总是静不下心来认真学习。想了想，算了学习理论知识还不如尝试去点做没有以前接触过的东西，这样即学了知识又长了经验，一举两得。前几个月我女朋友老是唠叨钱不知道用到哪里去了，我自己也这么认为。感觉没有怎么花钱，但钱又不知不觉没了，于是我想了个办法去整个记账软件把每天的开支及收入都一一记录下来，以后就有据可依啦！用那个记账软件用了段日子，...</summary><published>2010-03-18T01:35:00Z</published><updated>2010-03-18T01:35:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/18/1688657.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/18/1688657.html"/><content type="text">这段时间没有什么项目做比较闲，但隔三岔五的老板又会安排我做点小事情，总是静不下心来认真学习。想了想，算了学习理论知识还不如尝试去点做没有以前接触过的东西，这样即学了知识又长了经验，一举两得。前几个月我女朋友老是唠叨钱不知道用到哪里去了，我自己也这么认为。感觉没有怎么花钱，但钱又不知不觉没了，于是我想了个办法去整个记账软件把每天的开支及收入都一一记录下来，以后就有据可依啦！用那个记账软件用了段日子，...</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/16/1686882.html</id><title type="text">Adsense</title><summary type="text">很早之前听说了Google Adsense了，据说它能为网站站长挣美元。以前在网站运营部门上班，经理经常会拿一段Javascript代码给我，让我把它放在网页的某某位置上。我只是进行了简单的复制、粘贴操作，操作完之后浏览下竟然显示的是一个图片广告，一直搞不明白是怎么回事。前两天突然心血来潮想研究下Google Adsense，看究竟是如何挣取美元的。第一步当然是申请账号啦，别小看这一步很多人都被它堵在门外了，申请账号的确有些麻烦，因为你要有个属于你的网站（确切地说你必须有对某个网站空间的操作权限，这对于高手的来说不是难题哈）。尝试了几次都不行，最后面我用公司的网站来申请，然后Google公司给</summary><published>2010-03-16T02:15:00Z</published><updated>2010-03-16T02:15:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/16/1686882.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/16/1686882.html"/><content type="text">很早之前听说了Google Adsense了，据说它能为网站站长挣美元。以前在网站运营部门上班，经理经常会拿一段Javascript代码给我，让我把它放在网页的某某位置上。我只是进行了简单的复制、粘贴操作，操作完之后浏览下竟然显示的是一个图片广告，一直搞不明白是怎么回事。前两天突然心血来潮想研究下Google Adsense，看究竟是如何挣取美元的。第一步当然是申请账号啦，别小看这一步很多人都被它堵在门外了，申请账号的确有些麻烦，因为你要有个属于你的网站（确切地说你必须有对某个网站空间的操作权限，这对于高手的来说不是难题哈）。尝试了几次都不行，最后面我用公司的网站来申请，然后Google公司给</content></entry><entry><id>http://www.cnblogs.com/duncannjm/archive/2010/03/13/1685057.html</id><title type="text">个人经验总结</title><summary type="text">个人经验总结...</summary><published>2010-03-13T06:37:00Z</published><updated>2010-03-13T06:37:00Z</updated><author><name>小胆粗心</name><uri>http://www.cnblogs.com/duncannjm/</uri></author><link rel="alternate" href="http://www.cnblogs.com/duncannjm/archive/2010/03/13/1685057.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/duncannjm/archive/2010/03/13/1685057.html"/><content type="text">个人经验总结...</content></entry></feed>
