mssql性能优化(教你写出高质量的SQL语句)(二)

评论(0)浏览(83)分类:SQL及数据库
mssql性能优化(教你写出高质量的SQL语句)(二)6、 慎用游标数据库一般的操作是集合操作,也就是对由WHERE子句和选择列确定的结果集作集合操作,游标是提供的一个非集合操作的途径。一般情况下,游标实现的功能往往相当于客户端的一个循环实现的功能,所以,大部分情况下,我们把游标功能搬到客户端。游标是把结果集放在服务器内存,并通过循环一条一条处理记录,对数据库资源(特别是内存和锁..

mssql性能优化(教你写出高质量的SQL语句)(一)

评论(0)浏览(120)分类:SQL及数据库
mssql性能优化(教你写出高质量的SQL语句)(一)我始终认为,一个系统的性能的提高,不单单是试运行或者维护阶段的性能调优的任务,也不单单是开发阶段的事情,而是在整个软件生命周期都需要注意,进行有效工作才能达到的。所以我希望按照软件生命周期的不同阶段来总结数据库性能优化相关的注意事项。一、 分析阶段一般来说,在系统分析阶段往往有太多需要关注的地方,系统各种功能性、可用性、..

写出高效SQL语句应注意的地方

评论(0)浏览(94)分类:SQL及数据库
写出高效SQL语句应注意的地方避免使用IN 操作符 用IN写出来的SQL的优点是比较容易写及清晰易懂,这比较适合现代软件开发的风格。 但是用IN的SQL性能总是比较低的,从ORACLE执行的步骤来分析用IN的SQL与不用IN的SQL有以下区别: ORACLE试图将其转换成多个表的连接,如果转换不成功则先执行IN里面的子查询,再查询外层的表记录,如果转换成功则直接采用多个表的连接方式查询。..

C#版俄罗斯方块

评论(0)浏览(170)分类:游戏开发
C#版俄罗斯方块C++是游戏编程的首选语言,但我相信C++能做到的C#也能做到。本篇介绍用C#编写一个俄罗斯方块程序的原理,以及在C#里面播放声音,保存游戏设置的方法。游戏界面预览:菜单预览:自定义每个小方块颜色功能界面:游戏主要有四部分组成:Square类,Block类,gameField类,游戏引擎Square类: 这个类描述的对象是组成大方块中的每个小正方形实体..

游戏开发入门

评论(0)浏览(178)分类:游戏开发
游戏开发入门作者: crazymens 发表 : 8476游戏实验室 日期 : 2005年09月30日一、造个什么游戏  造一个什么样的游戏?如果叫您来答,您会答什么?是角色扮演还是即时战略?对于广大游戏编程爱好者来说,答案肯定会是角色扮演。  那么,我们要造一个什么样的角色扮演型游戏呢?相信这个问题也是毋庸质疑的,大家肯定都会说:“《仙剑》式”。的确,《仙剑..

网络游戏开发入门

评论(0)浏览(96)分类:游戏开发
网络游戏开发入门我经常被人问及一个只有一点编程经验或一点也没有的人如何在这条路上起步呢. 在这以前,我会尽我所能地对提问者进行一对一的解答和帮助. 然而现在看来已不可能了,因为当问题如潮涌般地涌向我时,我几乎都驾驭不住. 因此, 我想是时候将我所有的意见和建议编辑成册,为大家提供一个参考.本文旨在帮助那些想制作自己的游戏,却苦于无门的人们. 事实上,我..

C#游戏——极品蜜蜂V1.0

评论(0)浏览(85)分类:游戏开发
C#游戏——极品蜜蜂V1.0 闲着无聊,开发第二个游戏,怀恋小时候在游戏机上玩的那种什么飞机。游戏界面:本来是想做成飞机的,无奈没有找到飞机图片,于是用一只蜜蜂代替。本游戏属于碰撞类游戏,主要用到了aabb类。游戏中的物体都是该类派生的子类。aabb类描述如下: usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Drawing;namespaceSuper..

凡品贪吃蛇(C#)

评论(0)浏览(89)分类:游戏开发
凡品贪吃蛇(C#) 大家熟悉的贪吃蛇游戏,本程序只是实现基本功能,固为凡品。界面设计:程序很简单,也没什么可介绍的。源码和演示版下载:凡品贪吃蛇(C#) http://www.cnblogs.com/tuyile006/archive/2007/06/06/773075.html

C#版对对碰[强荐]

评论(0)浏览(113)分类:游戏开发
C#版对对碰[强荐] 不会没玩过QQ人气游戏对对碰吧!呵呵做了一个单机版的对对碰,用来平时练习一下眼力。界面预览:开始后界面:游戏中使用了个人写的一个进度条控件:myProcessBar.dll(在bin/debug文件夹中,不能删除,否则程序启动不了)虽然还是用GDI+开发,但明显比前几次开发的游戏流畅。关键是使用了双缓存。GDI+本身没有提供双缓存,解决之道是利用双缓存..

用JavaScript做的俄罗斯方块

评论(0)浏览(85)分类:游戏开发
用JavaScript做的俄罗斯方块!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"HTMLHEADTITLE俄罗斯方块/TITLEMETANAME="Generator"CONTENT="EditPlus"METANAME="Author"CONTENT=""METANAME="Keywords"CONTENT=""METANAME="Description"CONTENT=""stylespan.btn{BORDER-RIGHT:#7b9ebd1pxsolid;PADDING-RIGHT:2px;BORDER-TOP:#7b9ebd1pxsolid;PADDING-LEFT:2px;FONT-S..

一个开源C#3D游戏引擎

评论(0)浏览(128)分类:游戏开发
一个开源C#3D游戏引擎 1 IntroductionFor my fourth year computer graphics course I wrote a little 3D engine using C# and the .NET platform. I decided to go this route as opposed to the C++ route that everyone else took in the course because I wanted to see whether C# lived up to it's hype. Surprising, after writing about 600kB of code in C# ..

图片保存到数据库的小程序

评论(0)浏览(121)分类:Asp.Net/C#/WCF
图片保存到数据库的小程序源码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;usingSystem.Data.Sql;usingSystem.Data.SqlClient;usingSystem.IO;namespaceImageToDB{publicpartialclassUserEdit:Form{publicUserEdit(){InitializeComponent();}priva..

msSQL2005数据库备份

评论(0)浏览(96)分类:SQL及数据库
msSQL2005数据库备份--完整备份Backup Database NorthwindCSTo disk='G:\Backup\NorthwindCS_Full_20070908.bak'--差异备份Backup Database NorthwindCSTo disk='G:\Backup\NorthwindCS_Diff_20070908.bak'With Differential--日志备份,默认截断日志Backup Log NorthwindCSTo disk='G:\Backup\NorthwindCS_Log_20070908.bak'--日志备份,不截断日志Backup Log Nort..

DataTable的Merge方法和添加datatable到dataset

评论(0)浏览(105)分类:Asp.Net/C#/WCF
DataTable的Merge方法和添加datatable到datasetDataTable的Merge方法Merge方法是将两个结构相似的datatable合并成一个datatable:实例代码:+展开-C#//createtable1DataTabledt1=newDataTable();dt1.Columns.Add("id");dt1.Columns.Add("name");dt1.Columns.Add("pwd");for(inti=0;i5;i++){dt1.Rows.Add(newobject[]{i.ToString(),"name"+i.ToString(),"**"});}//createtable2DataTabledt2=ne..

一个游标简单例子

评论(0)浏览(62)分类:SQL及数据库
一个游标简单例子 +展开-SQLuseNorthwindgodroptablebackuptablegocreatetablebackuptable(--Eidintidentity(1,1),Eidint,Enamevarchar(50)notnull,--constraintpk_Eidprimarykey(Eid),)godeclareOrderCursorcursor--声明一个游标forselectEmployeeIDfromOrdersgroupbyEmployeeIDgodeclare@E_namevarchar(50)declare@OrdersCountintdeclare@EmpIDintopenOrderCurs..

.net环境下如何使用MySql数据库

评论(0)浏览(100)分类:Asp.Net/C#/WCF
.net环境下如何使用MySql数据库在网上看到一篇关于Asp.net和mysql的文章,mysql安装和.NET中连接MySQL数据库的方法详细请看《ASP.NET+MySQL简明图示入门》http://www.yesky.com/431/1944431.shtml用vb.net写的,我现在把代码改为C#的,数据库也使用了mysql5.0这里我使用EMS Mysql Manager lite工具管理mysql5.0如图:这里我数据库和表已经建好,现在打开vs.net2003,新建一个项目..

MySQL中MyISAM引擎与InnoDB引擎性能简单测试

评论(0)浏览(88)分类:SQL及数据库
MySQL中MyISAM引擎与InnoDB引擎性能简单测试[硬件配置]CPU : AMD2500+ (1.8G)内存: 1G/现代硬盘: 80G/IDE[软件配置]OS : Windows XP SP2SE : PHP5.2.1DB : MySQL5.0.37Web: IIS6[MySQL表结构]CREATETABLE`myisam`(`id`int(11)NOTNULLauto_increment,`name`varchar(100)defaultNULL,`content`text,PRIMARYKEY(`id`))ENGINE=MyISAMDEFAULTCHARSET=gbk;CREATETABLE`innodb`(`id`int(11)NOTNUL..

mysql5.1事件调度器

评论(0)浏览(80)分类:SQL及数据库
mysql5.1事件调度器 一、概述事件调度器是在MySQL 5.1 中新增的另一个特色功能,可以作为定时任务调度器,取代部分原先只能用操作系统任务调度器才能完成的定时功能。例如,Linux 中的 crontabe 只能精确到每分钟执行一次,而MySQL 的事件调度器则可以实现每秒钟执行一个任务,这在一些对实时性要求较高的环境下就非常实用了。事件调度器是定时触发执行的,在这个角..

ADO.Net的数据库连接池

评论(0)浏览(141)分类:Asp.Net/C#/WCF
ADO.Net的数据库连接池题外话今天同事问我.Net的数据库连接有没有连接池的概念。我根据脑海里一点模糊的印象回答他.Net是自己实现了连接池,不需要手工再实现一遍。后来回家确认了一下,原来我的这点印象来自《C#和.Net核心技术》中一小段数据库连接池的介绍。可能当时也只是知道.Net自己实现了不需我们再手工实现,另外就是.Net是通过连接字符串的不同来区分不同的连..

mySql的加密算法

评论(0)浏览(111)分类:SQL及数据库
mySql的加密算法1、双向加密 就让我们从最简单的加密开始:双向加密。在这里,一段数据通过一个密钥被加密,只能够由知道这个密钥的人来解密。MySQL有两个函数来支持这种类型的加密,分别叫做ENCODE()和DECODE()。下面是一个简单的实例: mysql INSERT INTO users (username, password) VALUES ('joe', ENCODE('guessme', 'abracadabra')); Query OK, 1 row aff..

mysql笔记

评论(0)浏览(103)分类:SQL及数据库
mysql笔记 1、取随机记录 SELECT id FROM student order by rand() limit 102、分配远程用户权限GRANT ALL ON db_name.* TO username@% IDENTIFIED BY 'userpassword'或GRANT ALL PRIVILEGES ON *.* TO username@% IDENTIFIED BY 'mypassword' WITH GRANT OPTION;3、select into 和 setselect a,b,c into @a,@b,@c from t where id=1;s..

mysql小技巧

评论(0)浏览(69)分类:SQL及数据库
mysql小技巧INSERT语法INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name [(col_name,...)] VALUES ({expr | DEFAULT},...),(...),... [ ON DUPLICATE KEY UPDATE col_name=expr, ... ]或:INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] tbl_name SET col_name={expr | DEFAULT}, ...

mysql常用函数

评论(0)浏览(107)分类:SQL及数据库
mysql常用函数算数运算子+, -, *, /除于 0 会等于 NULL。比较运算子任何东西跟 NULL 比较会等于 NULL。比较字符串通常不需要注意大小写,如果要比较大小写,用 BINARY 关键词。程序代码:SELECT *FROM departmentWHERE name = BINARY 'marketing';程序代码:= 相等!= 或 不相等 小于= 小或等于 大于= 大或等于n BETWEENmin AND max 测试范围n IN (set) set 可以..

完全优化MySQL数据库性能的八大巧方法

评论(0)浏览(121)分类:SQL及数据库
完全优化MySQL数据库性能的八大巧方法1、选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余..

MySql中捕获异常的方法

评论(0)浏览(180)分类:SQL及数据库
MySql中捕获异常的方法mySql中是否能有SQLserver的@@error变量呢,或者如c#中的try catch语法呢。答案是肯定的,实例代码如下:+展开-SQLDROPPROCEDUREIFEXISTSsp_call_jobs;CREATEPROCEDUREsp_call_jobs()NOTDETERMINISTICSQLSECURITYDEFINERCOMMENT''BEGINdeclare_row,_err,_countintdefault0;DECLARECONTINUEHANDLERFORSQLEXCEPTION,SQLWARNING,NOTFOUNDset_err=1;..

mysql优化:内存表和临时表

评论(0)浏览(101)分类:SQL及数据库
mysql优化:内存表和临时表 由于直接使用临时表来创建中间表,其速度不如人意,因而就有了把临时表建成内存表的想法。但内存表和临时表的区别且并不熟悉,需要查找资料了。一开始以为临时表是创建后存在,当连接断开时临时表就会被删除,即临时表是存在于磁盘上的。而实际操作中发现临时表创建后去目录下查看发现并没有发现对应的临时表文件(未断开链接).因而猜测临时表的..

SQL里面Case的用法

评论(0)浏览(71)分类:SQL及数据库
SQL里面Case的用法CASE 可能是 SQL 中被误用最多的关键字之一。虽然你可能以前用过这个关键字来创建字段,但是它还具有更多用法。例如,你可以在 WHERE 子句中使用 CASE。 首先让我们看一下 CASE 的语法。在一般的 SELECT 中,其语法如下: +展开-SQLSELECT=CASEWHENTHENWHENTHENELSEEND在上面的代码中需要用具体的参数代替尖括号中的内容。下面是一个简单的例子:..

关系数据库的索引技术

评论(0)浏览(80)分类:SQL及数据库
关系数据库的索引技术 摘 要:索引是影响关系数据库(RDBMS)性能的重要因素之一。当今常用的关系数据库,如SQL Server、Sybase、Oracle、DB2等,为了提高性能,都提供相应的索引机制。本文以微软的SQL Server数据库为例,介绍索引的概念、使用方法以及日常维护。关键词:数据库、索引、检索1 索引的概念索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列..

使用PagedDataSource类实现DataList和Repeater控件的分页显示功能

评论(0)浏览(76)分类:Asp.Net/C#/WCF
使用PagedDataSource类实现DataList和Repeater控件的分页显示功能 Asp.net提供了三个功能强大的列表控件:DataGrid、DataList和Repeater控件,相对DataGrid,DataList和Repeater控件具有更高的样式自定义性,很多时候我们喜欢使用DataList或Repeater控件来显示数据,但是Repeater和DataList没有分页功能,有时很不方便。 PagedDataSource类封装了DataGrid控件的属性,从而使DataGrid控件可以执行分页,它就..

IDataReader.GetSchemaTable 和 DataTable.Clone的区别

评论(0)浏览(142)分类:Asp.Net/C#/WCF
IDataReader.GetSchemaTable 和 DataTable.Clone的区别 本篇的主角是IDataReader.GetSchemaTable,顺便提及容易与之混淆的DataTable.Clone方法。一、IDataReader.GetSchemaTable 功能:返回一个 DataTable,它描述 IDataReader 的列元数据。如有表mbr_grade CREATE TABLE `mbr_grade` ( `grade_id` tinyint(3) unsigned NOT NULL auto_increment COMMENT '瓶主等级ID', `grade_nm` char(32) NOT NUL..