SqlServer
baoshan
这个作者很懒,什么都没留下…
展开
-
Sqlserver MD5 加密
IF EXISTS(SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N[dbo].[MD5_m_OnBits]) AND xtype IN(NFN, NIF, NTF))DROP FUNCTION [dbo].[MD5_m_OnBits]GO/********************************************转载 2007-03-01 14:20:00 · 2615 阅读 · 2 评论 -
ROUND(),CEILING()和FLOOR()例子
问题 最近我试着在自己的应用中使用四舍五入的值,我和我的用户在报表应用中的计算问题存在分歧。所有的代码都在T-SQL中,但是我认为报表问题与数据类型和向下取整或向上取整规则关系密切。请问您有没有这方面的高见?我想看到一些带有不同编码选项的例子。解答 如果不理解基本的数据类型和四舍五入函数,那么你就可能误解四舍五入。由于数据类型的差异(比如integer,float, decimal转载 2008-11-13 15:19:00 · 1514 阅读 · 0 评论 -
APPLY 运算符的使用
使用 APPLYAPPLY 运算符的左操作数和右操作数都是表表达式。这些操作数之间的主要区别是,right_table_source 可以使用表值函数,从 left_table_source 获取一个列作为函数的参数之一。left_table_source 可以包括表值函数,但不能以来自 right_table_source 的列作为参数。APPLY 运算符通过以下方式工作,以便为 FRO原创 2008-10-31 15:48:00 · 699 阅读 · 0 评论 -
SQL Server2005的PIVOT/UNPIVOT行列转
/*SQL Server2005的PIVOT/UNPIVOT行列转。SQL Server2005引入了很多迎合开发者口味的新特性,虽然改动不大,却大大了减少了开发者的工作量。在SQL Server2000中,要实现行列转换,需要综合利用聚合函数和动态SQL,实现起来需要一定的技巧,到了SQL Server2005中,使用新引进的关键字PIVOT/UNPIVOT,可以轻松实现行列转换的需求。下面以两转载 2008-10-31 14:14:00 · 1022 阅读 · 0 评论 -
nvarchar 和 varchar 的区别
字符集是在安装SQL Server时选择的,不能更改。使用Unicode数据类型,列可存储由 Unicode标准定义的任何字符,包含由不同字符集定义的所有字符。Unicode数据类型需要相当于非Unicode数据类型两倍的存储空间。Unicode数据使用SQL Server中的nchar、varchar和ntext数据类型进行存储。对于存储来源于多种字符集的字符的列,可采用这些数据类型。当列中原创 2008-09-28 09:18:00 · 757 阅读 · 0 评论 -
SqlServer 填充因子的说明
SqlServer 填充因子的说明使用 fill factor 选项可以指定 Microsoft SQL Server 2005 使用现有数据创建新索引时将每页填满到什么程度。由于在页填充时 SQL Server 必须花时间来拆分页,因此填充因子会影响性能。仅在创建或重新生成索引时使用填充因子。页面不会维护在任何特定的填充水平上。fill factor 的默认值为 0,有效值介于 0原创 2008-09-27 14:41:00 · 2478 阅读 · 1 评论 -
Sql Server 2005 维护计划 调度修改
更改 SQL Server 2005代理计划的设置。语法sp_update_schedule { [ @schedule_id = ] schedule_id | [ @name = ] schedule_name } [ , [ @new_name = ] new_name ] [ , [ @enable转载 2008-09-27 14:39:00 · 2013 阅读 · 2 评论 -
50种方法优化SQL Server数据库查询
查询速度慢的原因很多,常见如下几种: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、I/O吞吐量小,形成了瓶颈效应。 3、没有创建计算列导致查询不优化。 4、内存不足 5、网络速度慢 6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量) 7、锁或者死锁(这也是查询慢最常见的问题,是程序设计的缺陷) 8、s转载 2008-09-10 11:06:00 · 612 阅读 · 0 评论 -
row_number() 、dense_rank() 、rank() 、Over、Pivot用法说明
row_number() +1递增返回行号 dense_rank() 同数量等级的数据返回相同名次,下级数量等级的排名为上级数量等级的排名+1 rank() 同数量等级的数据返回相同名次,下级数量等级的排名为上级所有数据总数+1 语法 function_name() OVER ( [ ] ) CREATE TABLE employee (depart_name转载 2008-09-10 10:41:00 · 1538 阅读 · 0 评论 -
COALESCE()、isnull()、nullif()函数的用法
COALESCE()用法 Select COALESCE(null,null,1,2) 返回1作用 返回其参数中第一个非空表达式。isnull()用法 Select isnull(null,0) 返回 0作用 遇到null 返回 指定值nullif()用法 nullif(aa,aa) 返回 null, nullif(1,2) 返回 1作用 两个值相等则返回null原创 2008-09-10 09:57:00 · 3427 阅读 · 2 评论 -
提高数据库查询效率的实用方法
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select转载 2008-09-08 09:17:00 · 520 阅读 · 0 评论 -
sqlserver2005 读取xml文件到 数据库中
DECLARE @idoc int;DECLARE @doc xml; SELECT @doc=bulkcolumn FROM OPENROWSET( BULK c:/student.xml, SINGLE_BLOB) AS x EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc SELECT * into temp FROM OPEN转载 2008-08-01 17:07:00 · 703 阅读 · 0 评论 -
在SqlServer2005中使用正则表达式
先创建自定义函数-----------------------------------------------create function dbo.regexReplace ( @source varchar(5000), --原字符串 @regexp varchar(1000), --正则表达式 @replace转载 2008-04-16 17:34:00 · 1060 阅读 · 0 评论 -
sqlserver 跨数据库 访问
--方法一--创建链接服务器 exec sp_addlinkedserver ITSV, , SQLOLEDB, (local) exec sp_addlinkedsrvlogin ITSV, false,null, sa, newcapec --查询示例 select xh from ITSV.dbcenter.dbo.xs_xj -原创 2008-01-14 10:42:00 · 1741 阅读 · 0 评论 -
在 Sql Server 中访问Oracle数据库中的数据
--方法1,通过链接服务器访问oracle数据库EXEC sp_addlinkedserver @server = oracle, --链接服务名 @srvproduct = Oracle, --产品名称(固定) @provider = MSDAORA, --访问接口所用的驱动 @datasrc = DATABASECENTER --ora原创 2008-11-13 17:49:00 · 926 阅读 · 0 评论