C#中Invoke 和 BeginInvoke的涵义和区别
BeginInvoke 方法真的是新开一个线程进行异步调用吗?参考以下代码:public delegate void treeinvoke();private void UpdateTreeView(){ MessageBox.Show(System.Threading.Thread.CurrentThread.Name);}private void button1_Click(object sender, System.EventArgs e){ System.Threading.Thread.CurrentThread.Name = "UIThread"; treeView1.BeginInvoke(new treeinvoke(UpdateTreeView));}看看运行结果,弹出的对话框中显示的是 UIThread,这说明 BeginInvoke 所调用...
Oracle函数及用法大全(一)
1.ASCII返回与指定的字符对应的十进制数;SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A A ZERO SPACE--------- --------- --------- ---------65 97 48 322.CHR给出整数,返回对应的字符;SQL> select chr(54740) zhao,chr(65) chr65 from dual;ZH C-- -赵 A3.CONCAT连接两个字符串;SQL> select concat('010-','88888888')||'转23' 高乾竞电话 from dual;高乾竞电话----------------010-88888888...
MySQL性能优化之查询篇
今天,数据库的操作越来越重要,关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情。这个MySQL性能优化经验是作者自己进行总结的结果,配合一些代码进行解释。希望本文能给各位数据库管理员在性能优化方面一些启示。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能。这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库。希望下面的这些优化技巧对你有用。1.查询的模糊匹配尽量避免在一个复杂...
备份数据库,并按日期生成备份目录
/*--备份数据库,并按日期生成备份目录 --备份当前数据库 exec p_backupdb --*/ if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_backupdb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)drop procedure [dbo].[p_backupdb]GO create proc p_backupdb@dbname sysname='', --要备份的数据库名称,不指定则备份当前数据库@bkfname nvarchar(260)='', --备份文件名,文件名中可以用\DBNAME\代表数据库名,\DATE\代表日期,\TIME\代表时间@bkpath nvarchar...
sql分页 完整版
-- ===================================================-- auhtor : 数据库之家-- modified date : 01/10/2011 13:44:15-- description : 分页存储-- ===================================================-- ========= ======== SQL 2000========================create proc GetTablePage(@tbname nvarchar(4000), --查询的对象名及多表连接语句@feildcol nvarchar(4000), --查询的字...
数据库函数大全之常用函数篇
LEFT ( character_expression , integer_expression ) 返回从字符串左边开始指定个数的字符。例:select left('my name is viwo',4)my nRIGHT ( character_expression , integer_expression ) 返回字符串中从右边开始指定个数的 integer_expression 字符。例:select right('my name is viwo',4)viwoCAST ( expression AS data_type ) 将某种数据类型的表达式显式转换为另一种数据类型。CAST 和 CONVERT 提供相似的功能。例:select cast(2 as varchar(10))+cast(11 as varchar(10))...
SQL删除重复数据的几种方法
在数据处理的过程中,时常会遇到一个棘手的问题,就是“删除重复数据 ”今天就我平时在遇到这个问题的时候的处理办法方法1.这种方法不太好,如果数据太多的话,可能花时间select distinct id,* into temp_tb from tb1 drop tb1 update sysobjects set name='tb1' where name='temp_tb' 方法2.使用了新函数 ROW_NUMBER(),这个方法可能很多人不会用,但是可以去学学,还不错! WITH temp_tb AS (SELECT ROW_NUMBER() OVER (ORDER BY id ASC) AS ROWID, * FROM dbo.TB_use_ASCII)DELETE FROM tem...
代码优化之类型性能
撇开那些文章不说,C#/.NET慢似乎是业界公认的铁则,不论大家如何证明C# / .NET其实不比C++慢多少,但是应用程序级别的性能却依然这么慢。那么C#/.NET慢在哪里?很不幸的是大部分c#程序是被大部分程序员拖慢的,也许这个结论不太容易被人接受,却是一个广泛存在的。 String的操作几乎所有的程序都有String操作,至少90%的程序需要忽略大小写的比较,检查一下代码,至少其中大半的应用程序有类似这样的代码:if (str1.ToUpper() == str2.ToUpper())或者ToLower版的,甚至我还看到过有个Web的HttpModule里...
软件构架师之路(一)
软件构架师需要什么技能?作为项目的技术主管,构架师的技术需要非常的广泛,这比技术深度更加重要(当然构架师在特定的领域需要一定的技术深度)。软件构架师是技术主管首先,软件构架师是技术主管,这意味着除了他要有技术上的技能外,还要有很好的领导才能。构架师的领导能力在团队中和项目质量控制中起着十分重要的作用。在团队中,构架师是项目的技术总管,他需要有丰富的知识背景,以便作出技术上的决定。相对于构架师来说,项目经理是来管理项目的资源,时间进度和花费的。使用电影制作来做类比的话...