自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (3)
  • 收藏
  • 关注

原创 存储过程小知识1

众所周知,使用Exec来进行存储过程,其实Exec不但可以执行存储过程,还可以执行sql语句。例如:假设有一张表sc,我们查询它的所有信息,这里使用存储过程,为了说明以上问题。create proc test1_procasdeclare @str v

2011-09-06 10:47:16 322 1

原创 存储过程基础知识

什么是存储过程呢?存储过程就是作为可执行对象存放在数据库中的一个或多个SQL命令。 通俗来讲:存储过程其实就是能完成一定操作的一组SQL语句。那为什么要用存储过程呢?1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。2.当对数据库进行复杂操作时,可将此复杂操作用存储过

2011-06-17 09:07:00 580

原创 线程学习1——异步委托

一.为什么使用线程    简单来讲,就是用线程来实现,在程序运行过程中,还可以同时执行其他操作。二.线程的概述    线程是程序中独立的指令流。使用C#编写任何程序时,都有一个入口:Main()方法。程序从Main()方法的第一条语句开始执行,直到这个方法返回为止。    在.net framework class library中,所有与多线程机制应用相关的类都是放在System

2011-06-10 10:28:00 439

原创 线程学习2——Thread类

Thread 类        使用Thread类可以创建和控制线程,Thread类有如下方法:    Start():启动线程;    Sleep(int):静态方法,暂停当前线程指定的毫秒数;     Abort():通常使用该方法来终止一个线程;    Suspend():该方法并不终止未完成的线程,它仅仅挂起线程,以后还可恢复;     Resume():恢

2011-06-10 10:21:00 335

原创 线程学习3——前台线程和后台线程

前台线程和后台线程      线程默认为前台线程,这意味着任何前台线程在运行都会保持程序存活。      后台线程:只要有一个前台线程在运行,应用程序的进程就在运行。如果多个前台线程在运行,而Main()方法结束了,应用程序的进程就是激活的,直到所有前台线程完成其任务为止。      前台线程和后台线程的唯一的区别是— 后台线程不会阻止进程终止。      在默认情况下,用Th

2011-06-10 10:08:00 426

原创 线程学习4——线程池

线程池    创建线程是需要时间的。许多应用程序使用多个线程,但这些线程经常在休眠状态中耗费大量的时间来等待事件发生。    为了简化对这些线程的管理,.NET框架为每一个进程提供了一个线程池,使应用程序能够根据需要来有效地利用多个线程。    线程池线程都是后台线程。每个线程都使用默认堆栈大小,以默认的优先级运行,并处于多线程单元中。    ThreadPool类会在需要时增

2011-06-10 10:03:00 543

转载 Control的Invoke和BeginInvoke

我们要基于以下认识:(1)Control的Invoke和BeginInvoke与Delegate的Invoke和BeginInvoke是不同的。(2)Control的Invoke和BeginInvoke的参数为delegate,委托的方法是在Control的线程上执行的,也就是我们平时所说的UI线程。代码(一)(Control的Invoke)priv

2011-06-10 08:55:00 370

转载 多线程与Invoke,Beginvoke

 首先,什么样的操作需要考虑使用多线程?      总的一条就是,负责与用户交互的线程(以下简称为UI线程)应该保持顺畅,当UI线程调用的API可能引起阻塞时间超过30毫秒时(比如访问CD-ROM等速度超慢的外设、进行远程调用等等)就应该考虑使用多线程。      为什么是30毫秒?30毫秒的概念是人眼可以察觉到的一个迟滞,大约等同于电影里的一帧停留的时间,最长不要超过10

2011-06-10 08:52:00 756 3

转载 Mutex类及它的兄弟

转帖:http://www.cnblogs.com/1-2-3/articles/1212391.html摘要1-2-3翻开那《葵花宝典》,只见页首赫然写着几个大字:“欲练神功,必先自宫”,旁边几行歪歪扭扭的小字,又不知是哪位前辈高人所写:“在WC里占蹲位的3种方法:1. 如果你只对某个蹲位情有独钟,就要WaitOne(),但是不要忘了ReleaseMutex(

2011-06-10 08:50:00 720 1

转载 C#中使用Monitor类、Lock和Mutex类来同步多线程的执行

        C#中使用Monitor类、Lock和Mutex类来同步多线程的执行        在多线程中,为了使数据保持一致性必须要对数据或是访问数据的函数加锁,在数据库中这是很常见的,但是在程序中由于大部分都是单线程的程序,所以没有加锁的必要,但是在多线程中,为了保持数据的同步,一定要加锁,好在Framework中已经为我们提供了三个加锁的机制,分别是Monitor类、

2011-06-10 08:48:00 309

原创 线程学习10——BackgroundWorker类

基本概念注意:此类在 .NET Framework 2.0 版中是新增的。BackgroundWorker 类允许您在单独的专用线程上运行操作。耗时的操作(如下载和数据库事务)在长时间运行时可能会导致用户界面 (UI) 似乎处于停止响应状态。如果您需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用 BackgroundWorker 类方便地

2011-06-10 08:46:00 362

原创 线程学习9——Mutex类

互斥:      在操作系统中,许多线程常常需要共享资源,而这些资源往往要求一次只能为一个线程服务(排他性),这种排他性地使用共享资源称为线程间的互斥。线程互斥实质上也是同步,可以看做一种特殊的线程同步。Mutex类:线程的互斥常用Mutex类实现,利用它可以对资源进行独占性访问。与Monitor类相似,只有获取Mutex对象的所属权的线程才能进入临界区,未获得Mute

2011-06-10 08:44:00 319

原创 线程学习8——Monitor类

Monitor类提供同步对对象的访问的机制。lock语句就是由编译器解析为使用Monitor类。例如:lock(obj) {.........}解析为Monitor.Enter ()方法,该方法会一直等待,直到线程获得对象的锁定为止。那么如何解除锁定呢?Monitor类提供了Exit()方法解除锁定。 Monitor类具有以下功能: 它根据需要与某个对

2011-06-03 14:01:00 422

原创 线程学习7——lock语句

什么是lock语句?lock语句是设置锁定和解除锁定的一种简单方式。为什么使用lock语句?在使用多线程的过程中,会出现很多难以发现的问题,比如竞态条件与死锁,为了避免这些同步问题,所以使用lock语句,当然这并不是解决同步问题的唯一方法。lock语句的作用: lock 关键字可确保当一个线程位于代码的临界区时,另一个线程不会进入该临界区。 如果

2011-06-03 11:09:00 445

原创 线程学习6——死锁

死锁多线程中,常见的一种问题除了竞态条件外就是死锁。那什么是死锁呢?死锁就是:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。那么为什么会产生死锁呢?1.因为系统资源不足。2.进程运行推进的顺序不合适。3.资源分配不当。学过操作系统的朋友都知道:产生死锁的条件有四个:1.互斥条件:所

2011-06-03 11:08:00 321

原创 线程学习5——竞态条件

竞态条件概述:如果两个或两个以上的线程同时访问相同的对象,或者访问不同步的共享状态.就会出现竞态条件。举例:如果多个线程同时访问类StateThread中的方法,最后结果会如何呢?定义一个类StateThread,它包含一个int字段mState和一个方法ChangeIntValue。在ChangeIntValue方法中,验证mState变量是否包含10,如果是,就增其值。

2011-06-03 11:07:00 413

转载 学习UpdatePanel控件

<br />ScriptManager和UpdatePanel控件联合使用可以实现页面异步局部更新的效果。其中的UpdatePanel就是设置页面中异 步局部更新区域,它必须依赖于ScriptManager存在,因为ScriptManger控件提供了客户端脚本生成与管理UpdatePanel的功 能。<br />几个重要的属性:<br />    ScriptManager控件的EnablePartialRendering属性:true-实现页面的异步局部更新;false-实现全页面的刷新。<br />  

2011-05-17 15:11:00 261

原创 从表中选出前n条数据

<br />今天写了一个存储过程,是从表中选取前n条数据。然而却出现了一些Bug,原来是在引用参数的时候没有加括号?!唉!<br />记住这个错误吧!<br />create proc test<br />@i int <br />as<br />select top (@i) * from sc<br />go <br /> <br />看,多简单的一个问题啊!

2011-05-09 13:24:00 332

转载 sqlserver获取第n行数据

<br />如何在一个没有主键的表中获取第n行数据,在sql2005中可以用row_number,但是必须指定排序列,否则你就不得不用select into来过渡到临时表并增加一个排序字段。 <br />用游标的fetch  absolute语句可以获取绝对行数下的某行数据,测试代码如下:<br />set nocount on<br />--建立测试环境并插入数据,并且表没有主键<br />create table test(id int ,name varchar(10))<br />insert in

2011-05-09 10:19:00 1634

转载 SqlServer 数据库行转列的sql语句

<br />问题描述<br />假设有张学生成绩表(CJ)如下<br />Name Subject Result<br />张三 语文 80<br />张三 数学 90<br />张三 物理 85<br />李四 语文 85<br />李四 数学 92<br />李四 物理 82<br /><br />现在 想写 sql 语句     查询后结果 为    <br />姓名 语文 数学 物理<br />张三 80 90 85<br />李四 85 92 82       该怎么实现 ?<br />研究意义<

2011-05-09 09:34:00 527

转载 sql server日期格式转换方法大全

SQL Server中文版的默认的日期字段datetime格式是yyyy-mm-dd Thh:mm:ss.mmm 例如: select getdate() 2004-09-12 11:06:08.177整理了一下SQL Server里面可能经常会用到的日期格式转换方法: 举例如下: select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08select replace(replace(replace(CONVERT(varchar, getdat

2011-05-04 15:17:00 735

转载 SQL常用字符串函数

<br />SQL常用字符串函数<br /><br />一、字符转换函数<br />1、ASCII()<br />返回字符表达式最左端字符的ASCII 码值。在ASCII()函数中,纯数字的字符串可不用‘’括起来,但含其它字符的字符串必须用‘’括起来使用,否则会出错。<br />2、CHAR()<br />将ASCII 码转换为字符。如果没有输入0 ~ 255 之间的ASCII 码值,CHAR() 返回NULL 。<br />3、LOWER()和UPPER()<br />LOWER()将字符串全部转为小写;

2011-03-31 13:59:00 388 1

转载 深入讲解SQL Union和Union All的使用方法

<br />      UNION指令的目的是将两个SQL语句的结果合并起来。从这个角度来看, 我们会产生这样的感觉,UNION跟JOIN似乎有些许类似,因为这两个指令都可以由多个表格中撷取资料。 UNION的一个限制是两个 SQL 语句所产生的栏位需要是同样的资料种类。另外,当我们用 UNION这个指令时,我们只会看到不同的资料值 (类似 SELECT DISTINCT)。 union只是将两个结果联结起来一起显示,并不是联结两个表 <br /><br />  UNION 的语法如下: [SQL 语句 1

2011-03-30 13:40:00 312

转载 一个项目涉及到的50个Sql语句(整理版) (2)

18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分     SELECT L.C# As 课程ID,L.score AS 最高分,R.score AS 最低分     FROM SC L ,SC AS R     WHERE L.C# = R.C# and        L.score = (SELECTMAX(IL.score)                       FROM SC AS IL,Student AS IM                       WHERE

2011-03-29 15:14:00 511 1

转载 一个项目涉及到的50个Sql语句(整理版)

问题及描述:--1.学生表Student(S#,Sname,Sage,Ssex) --S# 学生编号,Sname 学生姓名,Sage 出生年月,Ssex 学生性别--2.课程表 Course(C#,Cname,T#) --C# --课程编号,Cname 课程名称,T# 教师编号--3.教师表 Teacher(T#,Tname) --T# 教师编号,Tname 教师姓名--4.成绩表 SC(S#,C#,score) --S# 学生编号,C# 课程编号,score 分数*/--创建测试数据createtable

2011-03-29 15:11:00 273

转载 C# 中的委托和事件

引言<br />委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。将方法作为方法的参数<br />我们先不管这

2011-01-25 14:33:00 212

转载 datetime

在c# / ASP.net中我们可以通过使用DataTime这个类来获取当前的时间。通过调用类中的各种方法我们可以获取不同的时间:如:日期(2008-09-04)、时间(12:12:12)、日期+时间(2008-09-04 12:11:10)等。//获取日期+时间DateTime.Now.ToString();            // 2008-9-4 20:02:10DateTime.Now.ToLocalTime().ToString();        // 2008-9-4 20:12:12//

2010-05-31 20:18:00 257

Telerik_Reporting_Q2_2010_v4_1_10_714_dev.

Telerik_Reporting 安装文件 绝对好用。

2012-03-16

C# 泛型委托示例 应用解析

这是一个泛型委托的示例,主要是让初学者了解泛型委托的用法,虽然很简单,但是代码有注释,我的这个例子是在vs2010中做的,用vs08的朋友们,最好还是转一下,但是绝对能实现(本程序是控制台应用程序,适合初学者),呵呵。

2011-02-09

C#事件实现窗体传值

用C#事件实现的窗体之间进行传值(附有代码和解决方案哦),决定能用,但是我的这个是用vs2010做的,若是用vs2008的话就得转一下了,呵呵!

2011-01-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除