日度归档:2019年7月2日

mssql sqlserver sp_addlinkedserver关键字应用简介


摘要:
我们深知 sp_addlinkedserver关键字的功能是向数据库引擎中添加连接,方便进行多库查询操作,如下所示:
实验环境:sql server 2008 R2



sp_addlinkedserver关键字应用场景

例:在数据库服务器192.168.1.10的数据库DataBaseA
上我们需要跨库查询192.168.1.11上的数据库DataBaseB,方便将数据库DataBaseB中的数据插入至DataBaseA上,此时我们需先在
192.168.1.10上添加链接服务器 192.168.1.11,然后才可以在192.168.1.10的DataBaseA上操作数据库DataBaseB,下文将重点讲述
sp_addlinkedserver关键字的用法:

sp_addlinkedserver 语法说明

sp_addlinkedserver [ @server= ] 'server' [ , [ @srvproduct= ] 'product_name' ]     
      [ , [ @provider= ] 'provider_name' ]    
      [ , [ @datasrc= ] 'data_source' ]
      [ , [ @location= ] 'location' ]
      [ , [ @provstr= ] 'provider_string' ]
      [ , [ @catalog= ] 'catalog' ]


sp_addlinkedserver 举例应用

   --1.创建链接服务器 "testLinkDB",并输入服务器的所对应的IP地址和用户名和密码
exec sp_addlinkedserver   'testLinkDB ', ' ', 'SQLOLEDB ', '远程服务器名或ip地址 '
exec sp_addlinkedsrvlogin 'testLinkDB ', 'false ',null, '用户名 ', '密码 '
 
--2.通过链接服务器名称对指定数据库和表进行访问
select * from testLinkDB.数据库名.dbo.表名

mssql sqlserver判断一个整数是否为奇数偶数的方法分享


摘要:
下文讲述使用自定义函数的方法,判断一个数值是否为奇数偶数的方法分享,如下所示:
实验环境:sql server 2008 R2



实现思路:
奇数的概念:
我们将不能被2整除的数称之为“奇数”。
将能被2整除的数称之为“偶数”。

    drop function dbo.fn_isJiShuCheck
go


create function dbo.fn_isJiShuCheck(@d int)
 returns bit  ---0代表非奇数 1代表奇数
 as 
 begin
   declare @maomao365 bit =0 
   
    IF (@d % 2 <> 0  )
      begin
        SET @maomao365 = 1
      end
       
     RETURN @maomao365   
 end
 go
 
 select dbo.fn_isJiShuCheck(6)
 go
 


    drop function dbo.fn_isOuShuCheck
go


create function dbo.fn_isOuShuCheck(@d int)
 returns bit  ---0代表非偶数 1代表偶数
 as 
 begin
   declare @maomao365 bit =0 
   
    IF (@d % 2 = 0  )
      begin
        SET @maomao365 = 1
      end
       
     RETURN @maomao365   
 end
 go
 
 select dbo.fn_isOuShuCheck(6)
 go


 

mssql sqlserver 使用sql脚本判断指定日期所属年份是否为闰年的方法分享


摘要:
下文简述使用sql脚本获取指定日期是否为”闰年”的方法分享,如下所示:
实验环境:sql server 2008 R2



实现思路:
闰年的概念:
如果一个年份能被4整除并且不能被100整除,我们称之为闰年
如果一个年份能被400整除,那么我们就把这个年份称之为闰年
根据闰年的概念,我们可以通过编写相应的sql脚本,实现年份是否为闰年的判断,如下所示:

    ----编写闰年判断的sql自定义函数
    
   drop function dbo.fn_runNianCheck
    go


   create function dbo.fn_runNianCheck(@d datetime)
     returns bit  ---0代表非闰年 1代表闰年
   as 
   begin
     declare @maomao365 bit =0 
   
       IF (YEAR(@d) % 4 = 0 AND YEAR( @d ) % 100 != 0) OR YEAR(@d) % 400 = 0
        begin
          SET @maomao365 = 1
        end
       
       RETURN @maomao365   
   end
   go
 
 select dbo.fn_runNianCheck('2000-7-2')
 go