- 博客(139)
- 资源 (62)
- 问答 (1)
- 收藏
- 关注
转载 Oracle一个UTF8字符集相关问题的解决
一般设计数据库的时候,我们都考虑一个汉字占用两个字节。所以设计数据库的时候,如果认为某字段最长要存四个汉字,该字段都会定义为varchar2(8)。SQL> create table t1 (col1 varchar2(8));Table created.但是测试插入三个汉字的时候就报错了。SQL> insert into t1 values('一二三');inse
2013-08-05 10:32:54
6254
原创 System.String和System.Text.StringBuilder
在简单的字符串操作中使用String,在复杂的字符串操作中使用StringBuilder。StringBuilder对象的创建代价较大,在字符串连接目标较少的情况下,应优先使用String类型,而在有大量字符串连接操作的情况下,应优先考虑StringBuilder。同时,StringBuilder在使用上,最好指定合适的容量值,否则由于默认容易的不足而频繁进行内存分配的操作会影响性能。
2013-05-22 17:26:00
1693
原创 接口本质
接口本质上仍然是类,可以看作是一个定义了抽象方法的类,该类仅提供了方法的定义,而没有方法的实现,其功能由接口的实现类来完成。也就是说,接口的抽象机制仍然是由多态来完成的。接口在本质上是一个不能实例化的类,但是又区别于一般意义上的类,例如不能实例化,允许多继承,还可以作用于值类型等。如:public struct DateTime:IComparable,IFormattable,IConv
2013-04-20 16:30:06
2139
原创 SQLCE小结
1.SQLCE 不是作为服务存在,它是实现了SQL语法的一个基于文件的产品,即文件数据库,而其他的数据库不能简单删除。2.SQLCE的并发访问,同时写会有问题。可以自己用锁在外面控件并发。3.SQLCE不支持事务,会把数据库写崩溃。4.SQLCE单表修改,Add Column一定把此列加在最后一列。
2013-01-11 16:03:43
988
转载 C#调用C++编写的COM DLL
在C#调用C++编写的COM DLL封装库时会出现两个问题:1. 数据类型转换问题2. 指针或地址参数传送问题 首先是数据类型转换问题。因为C#是.NET语言,利用的是.NET的基本数据类型,所以实际上是将C++的数据类型与.NET的基本数据类型进行对应。 例如C++的原有函数是: int __stdcall FunctionName(unsig
2012-12-14 14:58:57
855
转载 VS2010中的调试技巧
这是我的博客中关于VS 2010和.NET 4发布系列的第二十六篇文章。 今天的博文将介绍Visual Studio中的一些实用调试技巧。这是受我朋友Scott Cate (他发表过几十篇很棒的VS技术文章) 启发。他最近告诉我,许多Visual Studio下的程序员,甚至一些很有经验的开发人员,都不知道这些技巧。希望这篇文章能帮你掌握这些技巧。它们都很简单,却能帮你节约大量的时间。
2012-12-10 10:55:54
838
转载 写给加班的IT女生
【来信】尊敬的贺老师: 你好,工作到现在有一年多了,感觉很忙碌,信息量很大,很多事情都没有时间做,总觉得时间好紧,待会再做,结果就有推到后面去了。现在每天晚上都在公司加班到9:00-10:00,很正常。计划中的事情,总是白天的一些紧急事情打乱,然后就剩下很少的时间做,然后就不得不加班完成计划。 晚上回去的晚,白天就有些困,状态不是很好,然后就效率低。 公司的老
2012-10-31 15:22:10
1161
3
转载 DB2的MERGE语句使用注意事项!
MERGE INTO project pxUSING (SELECT project.* FROM SYSIBM.DUAL LEFT JOIN project WHERE id = ?) py ON px.id = py.id WHEN MATCHED THEN UPDATE SET (name, description, last_changed
2012-07-24 17:39:42
7858
转载 Merge 语句的使用
DB2 Merge 语句的作用非常强大,它可以将一个表中的数据合并到另一个表中,在合并的同时可以进行插入、删除、更新等操作。我们还是先来看个简单的例子吧,假设你定义了一个雇员表(employe),一个经理表(manager),如下所示: ---雇员表(EMPLOYE) CREATE TABLE EMPLOYE ( EMPLOYEID INTEGER NOT NULL,
2012-07-24 11:33:33
1073
原创 c# 中string与StringBuilder区别
string是固定不变的,在进行字符串连接的时候实际上是新建一个字符串,返回一个新的字符串对象。连接赋值后, 如果对string赋值多次,就会在内存中保存多个这个对象的副本,这些对象不再被引用,极大地浪费了系统资源 。而StringBuilder是可变的,不用生成中间对象,拼接字符串比较多,或字符串的长度比较长时有较高的效率。 StringBuilder的内存空间不够也要扩容,如果分配的
2012-06-14 17:00:33
685
转载 前台验证(利用验证控件和正则表达式)
正则表达示收藏整数或者小数:^[0-9]+/.{0,1}[0-9]{0,2}$只能输入数字:"^[0-9]*$"。只能输入n位的数字:"^/d{n}$"。只能输入至少n位的数字:"^/d{n,}$"。只能输入m~n位的数字:。"^/d{m,n}$"只能
2011-08-03 14:00:40
780
原创 SQLite Drop Column
BEGIN TRANSACTION;CREATE TEMPORARY TABLE test_backup(a,b);INSERT INTO test_backup SELECT a,b FROM test;DROP TABLE test;CREATE TABLE
2011-08-01 17:06:37
1835
原创 C# observer模式
今天复习了一下c sharp中的observer模式,记录一下。定义委托HotDelegateEventHandlerusing System;using System.Collections.Generic;using System.Text;namespace ObserverTest{ public delegate void HotDelegateEv
2011-06-22 17:12:00
846
原创 关于File.Move方法
如果操作的源和目标处于相同的根目录下,如源处于/C:/,目标处于/C:/test/,Move操作就不会引发异常。如果操作的源与目标处于同一目录下,即全位于C盘下,则进行的是重命名操作,与文件正在是否使用无关。如果操作的源与目标处于相同的根目录下,如源处于/C:/,目标处于/C:/test/,Move操作进行的是移动操作。与文件是否正在使用无关。
2011-06-10 11:30:00
2997
转载 AutoResetEvent 与 ManualResetEvent区别
在C#多线程编程中,这两个类几乎是不可或缺的,他们的用法/声明都很类似,那么区别在哪里了?Set方法将信号置为发送状态 Reset方法将信号置为不发送状态 WaitOne等待信号的发送其实,从名字就可以看出一点端倪 ,一个手动,一个自动,这个手动和自动实际指的是在Reset方法的处理上,如下面例子public AutoResetEvent autoevent=new AutoRese
2011-06-10 11:14:00
620
原创 MessageWindow类
<br />using System;using System.Collections.Generic;using System.Text;using Microsoft.WindowsCE.Forms;namespace SmartDeviceProject1{ //MessageWindow 类提供发送和接收基于 Windows 的消息的能力。 public class MsgWindow : MessageWindow { p
2011-06-01 15:49:00
2290
原创 两个数相除计算百分比
<br /> string signal = "5"; decimal value = Convert.ToDecimal(signal) / 31; //小数据取两位 int result = (int)(Math.Round(value, 2) * 100); this.lbSingle.Text = result + "%";
2011-05-19 10:52:00
8069
转载 Grove——.NET中的ORM实现
<br />ORM的全称是Object Relational Mapping,即对象关系映射。它的实质就是将关系数据(库)中的业务数据用对象的形式表示出来,并通过面向对象(Object-Oriented)的方式将这些对象组织起来,实现系统业务逻辑的过程。在ORM过程中最重要的概念是映射(Mapping),通过这种映射可以使业务对象与数据库分离。从面向对象来说,数据库不应该和业务逻辑绑定到一起,ORM则起到这样的分离作用,使数据库层透明,开发人员真正的面向对象。图 1简单说明了ORM在多层系统架构中的这个作用
2011-04-29 10:39:00
912
转载 对比.NET PetShop和Duwamish来探讨Ado.NET的数据库编程模式
概述Ado.NET为我们提供了强大的数据库开发能力,它内置的多个对象为我们的数据库编程提供了不同的选择。但是在允许我们灵活选用的同时,许多初学者也很迷惑,我到底是应该使用DataReader还是应该使用DataAdapter?我只想读取一小部分数据,难道我一定要Fill满整个DataSet吗?为什么DataReader不能和RecordSet一样提供一个数据更新的方法?DataSet到底有什么好处?在本文中,我将对.NET PetShop的数据库编程模式和Duwamish的数据库编程模式进行一些简单的分析和
2011-04-29 10:20:00
719
转载 如何诊断Windows CE的应用程序崩溃
<br />无论你是一个单纯的电脑用户还是一名高级软件工程师,都一定对程序崩溃不陌生。做为一名Windows CE应用程序开发者,你也一定遇到过下图这种场景:<br /><br />这个对话框告诉你,有一个叫installer.exe的程序在地址00019320处崩溃了。如果这个程序归你负责,那么你的问题就来了:怎么找出这个BUG?这篇文章我想谈谈我在这方面的一些经验。<br />Windows CE的崩溃界面给出的信息十分的少,其中最有用的无疑是崩溃地址,如果你能从崩溃地址定位到源代码去,这个问题可以说就
2011-04-02 15:09:00
850
原创 .Net中引用型对象作为参数进行传递
今天在调试程序的时候,C类中调用了操作数据库的方法A,方法A传递了数据库连接对象B。在方法中将数据库连接对象Dispose并置null,方法A执行完毕后,在C中B的值并不是空。同事说B应该就是空,理由是B是引用类型,我觉得B不应该是空,只有调用B时添加ref关键字才能将B对象置为null。我又说不出原因,只好写个小测试程序验证一下。
2011-03-16 17:29:00
1463
转载 C#或者.NET下的强制垃圾回收办法
<br />今天来谈谈C#的GC,也就是垃圾回收机制,非常的受教,总结如下<br />首先:谈谈托管,什么叫托管,我的理解就是托付C#运行环境帮我们去管理,在这个运行环境中可以帮助我们开辟内存和释放内存,开辟内存一般用new,内存是随机分配的,释放主要靠的是GC也就是垃圾回收机制。哪么有两个大问题 1.GC可以回收任何对象吗?2.GC什么时候来回收对象?回收那些对象?<br />对于第一个问题,GC可以回收任何对象吗?我是这样理解的,首先要明白一点,C#在强大也管不到非托管代码?哪么什么是非托管代码呢?比如
2011-03-16 17:21:00
13543
转载 C# 字节数组和字符串的相互转换
<br />c#中提供字节数组和字符串的相互转换的类:System.Text.Encoding<br />一:字符串-->字节数组,需要调用System.Text.Encoding中各种编码类的GetBytes方法。<br />二:字节数组-->字符串,需要调用System.Text.Encoding中各种编码类的GetString方法。<br /> <br /><br />System.Text.Encoding<br /> Encoding类负责字符的编码和字节序列的解码。编码是一个将一组 Uni
2010-11-23 13:48:00
3454
原创 The database disk image is malformed
<br />sqlite数据库操作,经常会报这个错误<br />“The database disk image is malformed<br />database disk image is malformed”<br />同事说是数据库坏了,为什么我的库总是坏了???<br />谁能告诉我为什么?<br />
2010-08-13 15:19:00
4805
原创 如何:创建和终止线程
<br />摘自MSDN.<br />此示例演示如何创建辅助线程,并用它与主线程并行执行处理。还将演示如何使一个线程等待另一个线程,并正确地终止线程。<br />using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;namespace MainThreadDemo{ //由于此数据成员由 DoWork 方法来检查,因
2010-07-21 11:18:00
858
原创 SQLite与Sql Server的语法差异
1.返回最后插入的标识值 返回最后插入的标识值sql server用@@IDENTITY sqlite用标量函数LAST_INSERT_ROWID() 返回通过当前的 SQLConnection 插入到数据库的最后一行的行标识符(生成的主键)。此值与 SQLConnection.lastInsertRowID 属性返回的值相同。2.top n 在sql server中返回前2行可以这样: select top 2 * from aa order by ids desc
2010-07-19 10:01:00
1314
1
原创 MissingMethodException
<br /> 在WinCE5.0上直接调试客户端程序时,程序运行正常。将程序部署到设备上再启动后,程序报异常“MissingMethodException此应用程序需要比安装在此设备上的Microsoft(R).NET Compact Framework 更高的版本”。如下图所示:<br /><br /><br /><br />上网查了一下,原来是代码使用了更高版本的.net compact framework,解决方法是将CE系统升级。<br />我的程序中使用了.net compact framewor
2010-07-16 09:34:00
4605
转载 简单工厂,工厂方法和抽象工厂的区别
<br />看了网络上很多关于设计模式的方法,有的模式看起来相似,但本质还是区别很大的.像简单工厂,工厂方法和抽象工厂就有很明显的区别. <br /> 有一个比较好理解的例子,在这跟大家介绍下: <br /> 1.如果一个后花园只种蔬菜类,那么就用简单工厂就可以了. <br /> 2.如果后花园蔬菜品种繁多.得用工厂方法才可以,把共有的东西抽象出来. <br /> 3.如果要扩大后花园的规模,比如一个在北方,一个在南方,这样工厂方法就无法实现了,就应当用抽象工厂,把各种各样的植物,又组成一个后花园.
2010-07-14 15:39:00
635
转载 设计模式之工厂模式Factory
<br />今天来转载一篇关于设计模式的文章!<br />工厂模式定义:提供创建对象的接口.<br />为何使用?<br />工厂模式是我们最常用的模式了,著名的Jive论坛 ,就大量使用了工厂模式,工厂模式在Java程序系统可以说是随处可见。<br />为什么工厂模式是如此常用?因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,所以以后new时就要多个心眼,是否可以考虑实用工厂模式,虽然这样做,可能多做一些工作,但会
2010-07-14 13:06:00
659
原创 wince 安装 sql server ce 3.5
<br />1、在桌面计算机上,打开<br /> <br />驱动器:/Program Files/Microsoft SQL Server Compact Edition/v3.5/Devices/wce400 或 wce500/CPU 体系结构类型。<br /><br />说明:<br />wce400 中的文件专用于在基于 Windows CE 4.X 的设备上运行,如 Pocket PC 2003 设备。Wce500 中的文件专用于在基于 Windows CE 5.X 的设备上运行,如 Window
2010-07-14 10:18:00
6294
1
原创 高效程序员的10个好习惯
习惯一:对事不对人我们每个人都会有好的想法,也会有不对的想法,团队中的每个人都需要自由地表达观点。即使你的建议不被全盘接受,也能对最终解决问题有所帮助。不要害怕受到批评。记住,任何一个专家都是从这里开始的。用Les Brown的一句话说就是:“你不需要很出色才能起步,但是你必须起步才能变得出色。”习惯二:跟踪变化习惯三:让设计指导而不是操纵开发习惯四:提早实现自动化部署习惯五:度量真实的进度习惯六:用代码沟通习惯七:编写内聚的代码习惯八:根据契约进行替换习惯九:报告所有的异常习惯十:做代码复查
2010-07-02 14:57:00
1043
原创 无法找到 PInvoke DLL“SQLite.Interop.063.DLL”。
调试程序时,出现了——无法找到 PInvoke DLL“SQLite.Interop.063.DLL”这个错误,好像是没有引用dll。但是程序中已经引用了System.Data.SQLite.dll这个dll啊。今天终于解决这个问题了,方法是将SQLite.Interop.063.DLL这个dll拷贝至CE设备的/Windows路径下,运行成功!以前用sqlite数据库时好像遇到过这个问题,原因是啥呢?
2010-06-08 11:07:00
3083
2
原创 CRUD
<br />最近发贴时,网友回贴时提到了一个词CRUD,之前不知道。Baidu了一下找到答案。<br /> <br />CRUD是指在做计算处理时的增加(Create)、查询(Retrieve)(重新得到数据)、更新(Update)和删除(Delete)几个单词的首字母简写。主要被用在描述软件系统中数据库或者持久层的基本操作功能。 <br /> In computing, CRUD is an acronym for create, retrieve, update, and delete. It is
2010-06-02 11:15:00
734
原创 PC端截PPC设备图像方法
VS2008提供了这个工具,打开程序——Microsoft Visual Studio 2008——Visual Studio Remote Tools——远程放大在界面中选择你所连接的设备,如下图所示。设备通过同步软件与PC连接,如图所示。连接成功后,即可抓取设备上的图像,并保存在PC机上。 按F5刷新界面。
2010-05-19 15:11:00
601
转载 关于若干Win32多线程函数API详解
CreateThread函数功能:该函数创建一个在调用进程的地址空间中执行的线程。函数原型: HANDLE CreateThread ( LPSECURITY_ATTRIBUTES lpThreadAttributes, DWORD dwStackSize, LPTHREAD_START_ROUTINE lpStartAddress, LPVOID lpParame
2010-05-11 13:33:00
1353
原创 .Net线程足迹(四)——互斥量(Mutex)
只有拥有互斥对象的线程才具有访问资源的权限,由于互斥对象只有一个,因此就决定了任何情况下此共享资源都不会同时被多个线程所访问。当前占据资源的线程在任务处理完后应将拥有的互斥对象交出,以便其他线程在获得后得以访问资源。 可以使用 WaitHandle.WaitOne 方法请求互斥体的所属权。拥有互斥体的线程可以在对 WaitOne 的重复调用中请求相同的互斥体而不会阻止其执行。但线程必须调
2010-05-11 13:22:00
1351
转载 ADO.NET与ORM的比较(4):EntityFramework实现CRUD
说明:个人感觉在Java领域大型开发都离不了ORM的身影,所谓的SSH就是Spring+Struts+Hibernate,除了在学习基础知识的时候被告知可以使用JDBC操作数据库之外,大量的书籍中都是讲述使用Hibernate这个ORM工具来操作数据。在.NET中操作数据库的方式有多种,除了最直接的方式就是使用ADO.NET之外,还可以使用NHibernate这个Hibernate在.NET中的实
2010-05-10 16:37:00
691
原创 .Net线程足迹(三)——IsAlive属性
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;namespace ThreadDemo{ class Program { static void Main(string[
2010-04-29 16:25:00
2235
Oracle学习相关资料大全
2009-04-24
2009-4-21(2009-4-21)
2009-04-21
用于收集和监视系统的很多状态信息及监控注册表的Demo
2009-04-15
Mobile Tracker Application for SmartPhones
2009-04-14
Getting a Millisecond-Resolution DateTime under Windows CE
2009-04-10
读取Excel数据到DataGrid c#代码
2009-04-09
Pocket PC services
2009-04-01
PdfiumViewer-master(Framwork4.0).rar
2020-07-10
SQL Server CE Query Tool
2010-07-14
Add Custom Properties to a PropertyGrid
2009-08-29
PPC取设备唯一号GetDeviceUniqueID
2009-07-02
A TreeView Control with ComboBox Dropdown Nodes
2009-06-13
Custom ComboBoxes with Advanced Drop-down Features
2009-06-09
使用 OpenNETCF.Desktop.Communication.dll拷贝设备文件到PC
2009-05-15
VS2013设置断点后调试程序就卡死,求大神指教!!!!!!
2016-07-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人