最近的文章列表

关系型数据库访问性能优化法则之程序员篇

声明:本文不是面向DBA,因为它是:DBA是数据库管理员,英文是Database Administrator。 DBA的一些职责: 安装和升级数据库服务器(如Oracle、Microsoft SQL server),以及应用程序工具。 数据库设计系统存储方案,并制定未来的存储需求计划。 一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。 一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。 根据开发人员的反馈信息,必要的时候,修改数据库的结构。 登记数据库的用户,维护数据库的安全性。 保证数据库的使用符合知识产权相关法规。 控制和监控用户对数据库的存取访问。 监控和优化数据库的性能。 制定数据库备份计划,

2010/12/9 Comments:
SQL SERVER 与ACCESS、EXCEL的数据转换
SQL SERVER 与ACCESS、EXCEL的数据转换熟悉SQL SERVER 2000的数据库管理员都知道,其DTS可以进行数据的导入导出,其实,我们也可以使用Transact-SQL语句进行导入导出操作。在Transact-SQL语句中,我们主要使用OpenDataSource函数、OPENROWSET 函数,关于函数的详细说明,请参考SQL联机帮助。利用下述方法,可以十分容易地实现SQL SERVER、ACCESS、EXCEL数据转换,详细说明如下:一、SQL SERVER 和ACCESS的数据导入导出常规的数据导入导出:使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤: 1在SQL SERVER企业管理器中的Tools(工具)菜单上,选择Data
2010/10/18 Comments:
【SQL Server】SQL日期格式化函数FormatDatetime
本文介绍一个SQL自定义日期格式化函数,看代码:Create function FormatDateTime(@Date datetime,@formatStr varchar(20)) returns varchar(16) as begin declare @tempstr varchar(20),@index int,@retStr varchar(20),@formatLen int,@str1 varchar(6),@str2 varchar(6),@str3 varchar(6),@j int declare @tempformat varchar(20) select @tempformat=@formatStr,@formatStr = Upper
2010/9/30 Comments:
【SQL Server】Sql实现的字符串分割自定义函数:Split
Create FUNCTION [dbo].[SplitToTable] ( @SplitString nvarchar(max), @Separator nvarchar(10)=’ ’ ) RETURNS @SplitStringsTable TABLE ( [id] int identity(1,1), [value] nvarchar(max) ) AS BEGIN DECLARE @CurrentIndex int; DECLARE @NextIndex int; DECLARE @ReturnText nvarchar(max); SELECT @CurrentIndex=1; WHILE(@
2010/9/30 Comments:
【SQL Server】清除HTML的SQL用户定义函数--不使用正则表达式
如何在数据库中过滤掉html标签,而不使用正则表达式呢?问题的本质就是删除<和>之间的字符,只留下有效的字符.下面的用户定义函数输入html字符,返回过滤结果的字符.注意在传入前请使用两个单引号,替换一个单引号.(不是用双引号替换单引号). CREATE FUNCTION [dbo].[udf_StripHTML] (@HTMLText VARCHAR(MAX)) RETURNS VARCHAR(MAX) AS BEGIN DECLARE @Start INT DECLARE @End INT DECLARE @Length INT SET @Start = CHARINDEX(’<’,@HTMLText) SET @End = CHARINDEX(’&g
2010/9/30 Comments:
【SQL Server】在SQL中实现分割字符串功能(类似Split)
很多程序语言都有split函数,使用分隔符把字符串分割为一个数组。在SQL中我们也经常有这种需求。比如订单列表显示,当我们选择一些订单,删除id为10,20,30,40的订单。我们希望把这些订单id组成一个字符串:10-20-30-40.传递到一个存储过程。由存储过程解析,进行相应删除工作。实现Split功能的存储过程:CREATE PROCEDURE ParseArray (@Array VARCHAR(1000),@separator CHAR(1)) AS BEGIN SET NOCOUNT ON DECLARE @separator_position INT DECLARE @array_value VARCHAR(1000)
2010/9/30 Comments:
【服务器】两个服务器上的两个数据库表进行关联查询
今天做了一个测试:先把记录一次读出,用static静态变量:private static SortedList sl = new SortedList();测试环境:ie登录一个账户(此记录多,慢),FF登录一个账户(此记录少,烧麦)。ie下用户测试结果:C# code开始时记录个数:0*有新纪录时记录个数:0*新纪录:ID-40/(此时总个数:1)*新纪录:ID-41/(此时总个数:2)*新纪录:ID-42/(此时总个数:4)*新纪录:ID-43/(此时总个数:6)*新纪录:ID-44/(此时总个数:8)*新纪录:ID-45/(此时总个数:10)*新纪录:ID-46/(此时总个数:12)*新纪录:ID-47/(此时总个数:13)*新纪录:ID-48/(此时总个数:14)*新纪录:ID-49
2010/8/25 Comments:
【MYSQL】.net链接mysql数据库,操作增删改查
另外MySql官方出了一个在csharp里面连接MySql的Connector,可以试试http://dev.mysql.com/downloads/#connector-net<add name="mysql" connectionString="server=125.46.37.170;uid=root;pwd=;"/>报错:Unable to connect to any of the specified MySQL hosts.今天做项目时候就遇到这问题中文提示找不到相应的主机。这时候请检查数据库服务器上 MySql.Data.dll 文件版本和项目 bin 目录下的版本是否一致。如果远程主机版本是 6.0.3而项目引用的是 5.0
2010/8/25 Comments:
【SQL】sql 语句处理 日期处理
DATENAME([Year], dbo.reservation.begintime) + N’年’ + CAST(DATEPART([Month], dbo.reservation.begintime) AS varchar) + N’月’ + DATENAME([Day], dbo.reservation.begintime) + N’日’ + DATENAME([Hour], dbo.reservation.begintime) + N’点’ + DATENAME([Minute], dbo.reservation.begintime) + N’分’ AS btime处理一个时间段不在另一个时间段的方法。 select * from db
2010/8/25 Comments: