工作总结 1 sql写法 insert into select from 2 vs中 obj文件和bin文件 3 npoi 模板copy CopySheet 最好先全部Copy完后 再根据生成sheet写数据 4 sheet.CopyRow(rowsindex, rowsindex + x); 5 npoi 复制模板如果出现单元格显示问题
我们可以从一个表中复制所有的列插入到另一个已存在的表中:
SELECT * FROM table1;
或者我们可以只复制希望的列插入到另一个已存在的表中:
(column_name(s))
SELECT column_name(s)
FROM table1;
bin是放最终代码的目录
obj就放中间代码的目录
release和debug是不同的运行方式
debug会增加调试代码,方便调试。调试完后,用release版本发布,没有调试代码,减小程序体积,加快执行速度!
一、先说说 编译:
编译一个源程序文件,要经过语法、类型,甚至要判断执行时的可行性等。 是一个对文件多次扫描的过程,最后还有代码优化的过程。会有一大堆的中间文件产生。vc6下的一个mfc项目 obj目录里会有好几M的中间(临时)文件。 再复杂点,一个project有图片(声音)等资源文件,要调用其他DLL类库(可能是.net组件,可能是com),还可能由多个.cs文件组成。要把这么多东西连接在一起。以前在DOS下 用C或PASCAL,要先编译成.obj文件,再用link.exe连接在一起,才是一个exe文件。(记 得pascal还是fortran要用两个编译程序才能得到一个.obj的中间文件)
结论:编译需要大量的中间文件存放临时结果,为下一步做准备。C#是面向对象的复杂度
更高!obj目录就是用来存放临时文件的!
二、debug & release
debug调试,你在程序中设置了断点,为什么vs.net知道在那里要停下来,当你把鼠标移到某个变量上,vs.net就会显示它当时的值?
因为编译器在代码中添加了许多调试需要的代码,可以让vs.net得到,返回给你。
这些代码当然是要占用空间和时间的,在你的程序调试完了后,可以正确运行了。完全可以去掉这些代码,这时候就应该用Release模式了。
不管Debug还是Release模式,都要编译,都有中间临时代码产生,所以obj目录下有debug release目录。两种模式编译的结果,就放在bin目录下。
编译完后,中间临时代码是没什么用的了,所以一般不管obj目录里的东西!
项目删除obj文件 或 bin文件 生成项目后会自动创建
npoi 模板copy CopySheet 最好先全部Copy完后 再根据生成sheet页写数据
4 复制模板 只用过 一行一行复制
当前sheet
sheet.CopyRow(rowsindex, rowsindex + 28);
可用for 循环 复制一块区域
5 npoi 复制copy excel 模板如果出现单元格显示问题 (比如copy 模板出来 还要copy多行)
多添加几行就好了