代码改变世界

【转】三大UML建模工具Visio、Rational Rose、PowerDesign的区别

2011-05-04 17:27 by 潇湘隐者, 10474 阅读, 0 推荐, 收藏,
摘要:本文转自http://developer.51cto.com/art/201006/207993.htmUML建模工具相信大家有所了解,那么你对UML建模工具Visio 、Rational Rose、PowerDesign之间的区别和联系是否了解,这里就像大家简单介绍一下。ROSE是直接从UML发展而诞生的设计工具,它的出现就是为了对UML建模的支持,ROSE一开始没有对数据库端建模的支持,但是在现在的版本中已经加入数据库建模的功能。ROSE主要是在开发过程中的各种语义、模块、对象以及流程,状态等描述比较好,主要体现在能够从各个方面和角度来分析和设计,使软件的开发蓝图更清晰,内部结构更加明朗( 阅读全文

ORACLE 常用函数——转换函数

2011-04-28 00:34 by 潇湘隐者, 12033 阅读, 1 推荐, 收藏,
摘要:------------------------------------------类型转换函数------------------------------------------------自动类型转换,ORACLE可以自动根据具体情况进行如下转换:*字符串到数值*字符串到日期*数值到字符串*日期到字符串EX:--*字符串到数值SELECT'3.14159'+20FROMDUAL;SELECT'3.1T'+20FROMDUAL;--报错:无效数字,即字符串必须能转换为数值类型才能进行操作--*数值到字符串SELECT'100'||124FROM 阅读全文

ORACLE 常用函数——字符函数

2011-04-27 00:51 by 潇湘隐者, 10975 阅读, 0 推荐, 收藏,
摘要:-----------------------------------------------字符函数-----------------------------------------------1:ASCII返回字符串的ASCII值 SELECTASCII('A')FROMDUAL;SELECTASCII('a')FROMDUAL;--2:CHR返回整数所对应的ASCII字符SELECTCHR('65')FROMDUAL;SELECTCHR(400)FROMDUAL;--如果超出ACII值,则返回空--3:CONCAT函数连接字符串A和字符串B 阅读全文

ORACLE 常用函数——日期/时间函数

2011-04-27 00:06 by 潇湘隐者, 37304 阅读, 4 推荐, 收藏,
摘要:---------------------------------------------日期/时间函数-------------------------------------------------1:SYSDATE用来得到系统的当前日期SELECTSYSDATEFROMDUAL;--2:ADD_MONTHS增加或减去月份SELECTTO_CHAR(ADD_MONTHS(TO_DATE('20080818','YYYYMMDD'),2),'YYYY-MM-DD')FROMDUAL;SELECTTO_CHAR(ADD_MONTHS(SYSDAT 阅读全文

ORACLE 常用函数——聚合函数

2011-04-26 23:06 by 潇湘隐者, 41655 阅读, 7 推荐, 收藏,
摘要:/************************************************************************************************************************** ORACLE 常用函数 这个系列我将整理一些日常我们经常使用到的ORACLE函数,鉴于篇幅太长,我大体会按下面分类来整理、汇总这些常用的ORACLE函数,如果有些常用函数没有被整理进来,也希望大家指点一二。1: 聚合函数2: 日期函数3: 字符串函数4: 格式化函数5: 类型转换函数6: 加密函数7: 控制流函数8: 数学函数9: 系统信息函数*** 阅读全文

数据库重构小工具介绍

2011-04-20 22:18 by 潇湘隐者, 1206 阅读, 0 推荐, 收藏,
摘要:我在《数据库重构》介绍篇http://www.cnblogs.com/kerrycode/archive/2011/03/14/1984260.html里面提到了数据库重构困难的一个原因是缺少重构工具的支持,今天却无意间撞见了一个数据库重构工具,觉得非常有必要和大家介绍下:RedGate套件里面有个Smart Rename 和 Split Table两个插件工具,使用起来非常简单,下面截些图供大家参考,如果感兴趣的话,自己可以装上RedGate套件试试。 Smart Rename 的介绍如下(我自己翻译的,不足之处还请大家指教): 智能命名重构时生成脚本去重命名你数据库里面的对象而不会破坏对象 阅读全文

三大数据库对比研究系列——数据类型

2011-04-20 22:10 by 潇湘隐者, 2741 阅读, 2 推荐, 收藏,
摘要:如果你经常在不同类型数据库做开发或学习时,切换数据库写脚本时,不同数据库的数据类型可能会让你有点“晕”。下面我将对Oracle、SQL Server 、MySql三种数据库的数据类型做下例举、比较SQL SERVER数据库暂且以SQL Server 2005为参考SQL SERVER 数据类型分的比较细: 整数数据、 字符数据、 货币数据、日期和时间数据、二进制字符串等 数据类型 所属类型 所占字节 范围 tinyint 精确数字类型 1字节 0 ~ 255 smallint 精确数字类型 2字节 -215(-32768)~215-1(32767) int 精确数字类型 4字节 -231 (- 阅读全文

SQL 2000自定义函数调用GETDATE()报错

2011-03-23 22:38 by 潇湘隐者, 2506 阅读, 0 推荐, 收藏,
摘要:在SQL 2000数据库里的自定义函数中调用GETDATE()时,结果编译时报错,提示错误如下:Invalid use of 'getdate' within a function我给个测试例子如下所示,--================================================================================================-- Author : Kerry-- CreateDate : 2011-03-23-- Description : ... 阅读全文

数据库重构《Refactoring DataBase Evolutionary DataBase Design》介绍

2011-03-14 22:29 by 潇湘隐者, 3626 阅读, 1 推荐, 收藏,
摘要:说实话我也是前两周才知道有数据库重构这回事,当时听说这个概念的时候,唯一的反应就是:数据库居然也能重构?刚好上周去图书馆借书,看见了《数据库重构》这本书,就借回来看了几章。下面会结合自己的体会介绍一些这本书的一些观点。数据库重构概念数据库重构是对数据库Schema进行的简单改动,在保持行为和信息语义的前提下改进设计。数据库重构可以重构数据库Schema的结构:比如表、视图的定义、修改; 重构数据库的功能:如存储过程、触发器等。数据库重构的困难数据库重构其实并不像代码重构那么简单,对数据库结构的改动,真的是牵一发而动全身。可能你要改动业务逻辑层、UI表示层、甚至是牵连到一些其它模块、外部调用程序 阅读全文

Access数据库问题锦集

2011-03-13 19:07 by 潇湘隐者, 999 阅读, 0 推荐, 收藏,
摘要:很少采用Access做数据库开发,前段时间,朋友接了一个小单,让我帮忙做后台开发,采用Access + Asp.Net开发,结果在开发过程使用Access碰到不少问题,所以把这些问题总结一下,希望对其它人有些帮助1: Access分页脚本问题使用Access作为数据库开发系统时,页面数据分页的方案有好几种: 1.1 使用DataGridView自带的分页功能. 1.2. 使用SELECTTOP NOT IN 来实现。类似如下所示:SELECT TOP 100 [ID] , [Message] , [CreateDate]FROM ScrollMessageWHERE ID NOT IN ( S 阅读全文

Log4net 配置使用总结(一)

2011-03-12 15:53 by 潇湘隐者, 1364 阅读, 0 推荐, 收藏,
摘要:博客园里面关于Log4net配置介绍的文章已经很多了,本篇想对Log4net做一个整体、全面的介绍。一来整理一下自己在学习、配置中遇到的一些问题、二来梳理、总结一下这方面的知识。所以下面相当一部分是从官方资料翻译过来,翻译不当之处,还请大家多多指教(http://www.cnblogs.com/kerrycode)。Log4net 介绍Log4net是一个基于.NET开发的一款非常著名的记录日志的开源组件,它是Apache日志服务项目的一部分。从它的官方网址为http://logging.apache.org/上面你可以看到还有log4j(Java)、 log4cxx(C++)、log4php 阅读全文

ROW_NUMBER () 与 PARTITION 组合妙用

2010-12-27 18:32 by 潇湘隐者, 1378 阅读, 0 推荐, 收藏,
摘要:前几天在一个群里面,有位网友问:在一个Book表里面里有字段AuthorID与Author表关联,现在要求按PublishDate字段倒序排列,列出每个作者的前五本书。要求有没有一条语句搞定的. 当时有个网友说不能一条语句解决问题,说只能用游标或临时表来解决。恰好我前阵子在整报表时遇到过类似的问题,当时解决过这个问题。当时我就告诉他用ROW_NUMBER与PARTITION来解决(前提是SQL SERVER 05或以上版本)。恰好现在有时间。正好把这个整理一下,即是对知识的梳理、巩固、总结,也希望能给其他人一些帮助建表脚本代码代码下面就是解决问题的脚本代码 阅读全文

SQL Server 复制需要有实际的服务器名称才能连接到服务器

2010-12-27 17:21 by 潇湘隐者, 6004 阅读, 0 推荐, 收藏,
摘要:机子由于在捣鼓DAC连接方式时,计算机名被修改了,被改成了kerry,直到最近几天由于计算机改名了,这个潜在的问题(本机数据库只是偶尔那里做实验)终于爆发了:我用连接服务器从其它服务器拷贝数据时报错,错误如下:SQL Server 复制需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP 地址或任何其他备用名称进行连接。请指定实际的服务器名称“xxxx”。 (Replication.Utilities):具体情况如图所示解决方法:从sys.sysservers 查看列 svrname 可以发现不是新的计算机名,问题就出在此处(如图所示)。先用 sp_dropserver 删除服务 阅读全文

System.Runtime.InteropServices.COMException (0x80040154)错误

2010-12-27 15:13 by 潇湘隐者, 29711 阅读, 0 推荐, 收藏,
摘要:用windwos服务、owc、excle组件生成Excel文档,然后通过邮件自动发生给公司管理层,本来在本地测试、配置都正常,但是部署到Window 2003服务器上,服务启动后,日志文件记录程序出错,错误如下所示System.Runtime.InteropServices.COMException(0x80040154): 检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80040154。COM组件出错,上网查了下资料,在邀月的博客中http://www.cnblogs.com/down 阅读全文

你碰到过StreamReader.Peek的异常情况

2010-12-25 11:52 by 潇湘隐者, 2536 阅读, 3 推荐, 收藏,
摘要:工作中有个需求需要采集每个服每天用户的登录信息、道具使用情况等(用来做数据分析),这些信息、数据是通过技术那边的Http接口来获取,为了提高效率,节省流量,没有用XML或JSON格式的输出(数据量比较大,用XML格式或JSON格式或增加许多冗余的信息,优劣暂且不讨论),而是用简单的文本形式,Http接口数据的输出的格式如下:1:不同记录以"\r\n"分隔2:不同字段以“|||”分隔举个例子(假设),用户每天的登录信息:字段排列顺序为:GameID|||UserID|||UserName|||ServerID|||ServerName|||IP|||RegistedFrom|||FromSite 阅读全文

T-SQL 编码标准【转帖】

2010-11-21 23:23 by 潇湘隐者, 798 阅读, 0 推荐, 收藏,
摘要:本文转自:http://www.microsoft.com/china/msdn/library/data/sqlserver/sp04l9.mspx?mfr=true可能让人觉得很奇怪,但好像的确没有什么“正式的”T-SQL 编码标准。早在 1999 年末的时候,我惊喜地发现 John Hindmarsh 提出的 SQL Server 7.0 标准,我在 2000 年 2 月的社论中对他的某些建议进行了总结。(2000 年 2 月以及本月的“下载”中都包括了 John 原来的标准。)后来,Ron Talmage 撰写了一系列专栏文章,提出了他对各种“最佳方法”的建议,当然,SQL Serve 阅读全文

重构的一点体会

2010-10-27 23:01 by 潇湘隐者, 868 阅读, 0 推荐, 收藏,
摘要:这几天在重构系统,用四个字形容我的心情就是“吐血而亡”,其实只是因为权限控制的细化,导致大量地方需要修改(原先比较混乱),索性重构这部分功能,如果整个系统重构,估计会让我疯狂的。还不如推倒重写舒服。可见重构动作不宜过大,应该小步小步、日积月累的不断重构。现在回过头来体会《重构—改善既有代码设计》这本书的知识点,觉得作者的一系列观点真是切入要害。 系统开发、维护本... 阅读全文

SQL SERVER 的模糊查询 LIKE

2010-10-14 17:00 by 潇湘隐者, 6106 阅读, 3 推荐, 收藏,
摘要:今天写个动态脚本,需要把数据库里面包含“USER_"的表删除掉,突然想不起来如何搜索通配字符了,赶紧查查MSDN,整理了下模糊查询的知识点,留着以后查阅用。LIKE模糊查询的通配符 通配符 说明 示例 % 包含零个或多个字符的任意字符串。 WHERE title LIKE '%computer%'将查找在书名中任意位置包含单词"computer"的所有书名。 _(下划线) 任何单个字... 阅读全文

慎用SELECT INTO复制表

2010-10-12 12:18 by 潇湘隐者, 7886 阅读, 1 推荐, 收藏,
摘要:很多时候我们习惯于用SELECT INTO复制一个表或表结构,因为它方便,快捷,而且在某些情况下效率比INSERT INTO 效率要高一些。但是要注意: SELECT INTO 复制表或表结构的时候,只是得到了一个“外壳”,就像克隆人一样,只是得到了一个躯体,个人的意识、回忆都不会克隆的。像原表的主键、外键、约束、触发器、索引都不会被复制过来。这点要注意哦,在某些情况下,没... 阅读全文

SQL Server 2008 打SP1 补丁遇到的问题

2010-09-21 17:05 by 潇湘隐者, 5529 阅读, 0 推荐, 收藏,
摘要:今天在我机器上给SQL Server 2008 打上SP1补丁时,错误不断,郁闷死了。我的机器是XP Server Pack 3, SQL Server 2008 版本:SQL Server 2008 版本Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--... 阅读全文

SQL Server 2008 筛选器报错Microsoft.SqlServer.Management.Sdk.Sfc

2010-09-21 14:53 by 潇湘隐者, 2615 阅读, 0 推荐, 收藏,
摘要:在Microsoft SQL Server 数据库中有时候经常需要筛选表,因为数据中表比较多时,不仅从一堆表里面找一个表比较麻烦,而且客户端从服务器加载这些信息需要一些时间。前两天安装了SQL Server 2008,结果在筛选表时,报如下错误:点击确定后,然后“表(已筛选)”,弹出如下错误提示。这个是因为没有打上SQL Server 2008 Service Pack 1... 阅读全文

SQL Server数据库专用管理员DAC连接方式

2010-09-18 11:38 by 潇湘隐者, 3752 阅读, 0 推荐, 收藏,
摘要:SQL Server 提供了专用管理员链接(DAC)。DAC允许管理员访问运行的服务器以执行诊断函数或Transact—SQL语句,或对服务器上的问题进行故障排除,即使服务器以锁定或在非正常状态下运行。DAC默认情况下只有服务器上可以使用DAC,但是你可以通过 SQLServer 2005 外围应用配置器设置允许远程计算机上的客户端应用程序使用 DAC,如下图所示你也可以通过下面的SP... 阅读全文

查看数据库、表、索引的物理存储情况

2010-09-13 08:18 by 潇湘隐者, 2542 阅读, 1 推荐, 收藏,
摘要:在管理、维护数据库时,经常需要查看数据库文件、日志文件所占用的磁盘空间,以及磁盘还剩下的磁盘空间,你可以通过下面几种方面查看数据库文件详细情况:1: 是通过远程连接(或VPN)连接到数据库服务器,直接去查看。2: 你连接到数据库后,可以通过mssms管理器,选择要查看的数据库,单击右键选择属性。然后选择文件选项,如下图所示。3: 通过SQL命令、脚本查看。3.1: sys.database_files 视图中保存着数据库文件(数据文件、日志文件)等的详细信息SELECT*FROMsys.database_files--通过下面命令,查看系统各磁盘可使用空间。EXECmaster..xp_fix 阅读全文

Microsoft OLE DB Provider for ODBC 组件

2010-09-09 14:51 by 潇湘隐者, 2720 阅读, 0 推荐, 收藏,
摘要:Microsoft OLE DB Provider for ODBC (MSDASQL) 一项允许在 OLEDB 和 ADO(它在内部使用 OLEDB)上构建的应用程序通过 ODBC 驱动程序访问数据源的技术。 MSDASQL 是用于连接到 ODBC(而不是数据库)的 OLEDB 访问接口。 MSDASQL 随 Windows 操作系统提供,Windows Server 2008 和 Window... 阅读全文

数据库表的基本信息,你知道吗?

2010-09-03 12:15 by 潇湘隐者, 5402 阅读, 16 推荐, 收藏,
摘要:用SQL Doc生成数据库字典文档的时候,突然发现有字段描叙(Description)这项内容,以前一直没有注意过,故特意研究了一下,结果越挖越深,就写了这篇文章。以前在做数据库脚本开发时,新建表时,对各个字段的描叙要么是记录在文档里面,要么自己建一个表,来保存这些内容,以便日后开发、维护的方便。其实这些信息完全可以放在数据库自己的系统视图里面。对字段的说明、描述一般都放在系统视图sys.exte... 阅读全文

SQL模板资源管理器,你用了吗?

2010-08-21 21:30 by 潇湘隐者, 1858 阅读, 1 推荐, 收藏,
摘要:SQL Server Management Studio 有个模板资源管理器,不知你用过没有?使用模板创建脚本、自定义模板等功能能大大提高你的工作效率,如果没有尝试过,赶紧去试试吧。很多时候,我们习惯了手写脚本,而不愿意花费精力去研究陌生的工具。你可以在通过下面方式打开模板资源管理器 视图->模板资源管理器; 也可以通过快捷键CTRL + ALT + T打开它。如图所示,你可以看见里面已经包... 阅读全文

清除Chrome浏览器的历史记录、缓存

2010-08-19 23:04 by 潇湘隐者, 5475 阅读, 1 推荐, 收藏,
摘要:习惯了用360卫士清理浏览器缓存、历史记录等垃圾文件,但是今天用360清理过后,打开谷歌浏览器Chrome时, 发现它的历史记录(CTRL+ H)根本没有被清理掉,经过一番探索后,可以通过下面方法清除历史记录:首先找到谷歌Chrome浏览器安装文件的目录,我的C:\Documents andSettings\Administrator\Local Settings\Application Data... 阅读全文

如何书写优雅、漂亮的SQL脚本?

2010-08-16 08:40 by 潇湘隐者, 35345 阅读, 18 推荐, 收藏,
摘要:本篇来聊聊如何书写漂亮、整洁、优雅的SQL脚本,下面这些是我个人总结、整理出来的。姑且做个抛砖引玉吧,呵呵,欢迎大家一起来讨论。我们首先来看看一段创建数据表的脚本(如下所示),你是否觉得有什么不妥或是不足呢?如果是你,你怎样书写呢?代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHig... 阅读全文

SQL Server——存储过程

2010-08-14 01:10 by 潇湘隐者, 7209 阅读, 4 推荐, 收藏,
摘要:我想从下面几个方面大概的讲述下存储过程,可能有些知识点是你没有注意的,也可能有些知识点我不知道,欢迎大家指点指点。如有不足,欢迎指教!存储过程概念存储过程优点存储过程的接口存储过程的解析、编译过程存储过程安全性查看存储过程加密、解密存储过程存储过程概念存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中。用户通过指定存储过程的名字并给出参数(带参... 阅读全文

String.Format 格式化货币的小问题

2010-08-11 22:45 by 潇湘隐者, 1240 阅读, 1 推荐, 收藏,
摘要:今天在开发过程中,遇到一件让我觉得比较纳闷的事情:用String.Format 格式化充值金额的时候,我这样处理:String.Format("{0:C2}", dr["InpourMoney"].ToString())后,并没有像预期在充值金额前面加上货币符号¥, 反而String.Format("{0:C2}", dr["InpourMoney"]) 这样处理后,在页面充值金额上面添加了¥符号... 阅读全文