博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年8月8日

摘要: 在使用分布式结构的系统时,我们常常会遇到跨库查询的问题,跨库查询一般使用以下方法1. openrowset例子:select*fromopenrowset('SQLOLEDB','sql服务器名';'用户名';'密码',数据库名.dbo.表名)只有在以下情况下才能使用 OPENROWSET 访问 OLE DB 数据源中的远程数据:指定访问接口的 DisallowAdhocAccess 注册表选项已显式设置为 0,并启用了 Ad Hoc Distributed Queries 高级配置选项。如果未设置这些选项,则默认行为不允许即席访 阅读全文

posted @ 2012-08-08 01:23 linFen 阅读(4937) 评论(0) 推荐(1) 编辑

摘要: PIVOT用于将列值旋转为列名(即行转列),在SQL Server 2000可以用聚合函数配合CASE语句实现PIVOT的一般语法是:PIVOT(聚合函数(列) FOR 列 in (…) )AS P完整语法:table_sourcePIVOT(聚合函数(value_column)FOR pivot_columnIN(<column_list>))UNPIVOT用于将列明转为列值(即列转行),在SQL Server 2000可以用UNION来实现完整语法:table_sourceUNPIVOT(value_columnFOR pivot_columnIN(<column_lis 阅读全文

posted @ 2012-08-08 00:59 linFen 阅读(5733) 评论(0) 推荐(2) 编辑

摘要: 本文主要介绍使用windows下的使用cmd命令行窗口操作Sqlserver,首先我们可以运行 osql ?/ ,这样就把所有可以通过CMD命令行操作sqlserver的命令显示出来(有图有真相)然后我们知道connect 服务器是-S,登陆ID是-U,密码是-P那我们现在来操作试试看。运行 osql -S 【数据库服务器】 -U 【登陆用户名】 -P 【登陆密码】出现 1> 表示连接成功,这时候你可以输入sql语句来进行操作了。以CMD命令行来操作Sqlserver,DotNetGeek觉得没有多大的用处,而且,select出来的数据排版显示不整齐美观,如果你在一台没有Sqlserve 阅读全文

posted @ 2012-08-08 00:41 linFen 阅读(46058) 评论(1) 推荐(0) 编辑

摘要: --提取数字IFOBJECT_ID('DBO.GET_NUMBER')ISNOTNULLDROPFUNCTIONDBO.GET_NUMBERGOCREATEFUNCTIONDBO.GET_NUMBER(@SVARCHAR(100))RETURNSVARCHAR(100)ASBEGINWHILEPATINDEX('%[^0-9]%',@S)>0BEGINset@s=stuff(@s,patindex('%[^0-9]%',@s),1,'')ENDRETURN@SENDGO--测试PRINTDBO.GET_NUMBER(' 阅读全文

posted @ 2012-08-08 00:30 linFen 阅读(1828) 评论(0) 推荐(1) 编辑

摘要: 语法格式:PATINDEX ( '%pattern%' , expression )返回pattern字符串在表达式expression里第一次出现的位置,起始值从1开始算。pattern字符串在expression表达式里没找就返回0,对所有有效的文本和字符串就是有效的数据类型。描述一下此函数的具体用法:1. PATINDEX ( '%pattern%' , expression )'%pattern%'的用法类似于 like '%pattern%'的用法,也就是模糊查找其pattern字符串是否是expression找到,找到 阅读全文

posted @ 2012-08-08 00:24 linFen 阅读(12885) 评论(0) 推荐(0) 编辑