关闭

将IP地址转换为二进制

标签: gofunction
586人阅读 评论(0) 收藏 举报
分类:
SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO

create function dbo.changeIPtoBin
(
    
@startip nvarchar(30)
)
returns varchar(32

as 
begin
    
declare @IP1 int
    
declare @IP2 int
    
declare @IP3 int
    
declare @IP4 int

    
declare @startIPBin varchar(32)

    
declare @ind1 int
    
declare @ind2 int
-----
    select @ind1=charindex('.',@startip,1)
    
select @IP1=substring(@startip,1,@ind1-1)

    
select @ind2=charindex('.',@startip,@ind1+1)
    
select @IP2=substring(@startip,@ind1+1,@ind2-@ind1-1)

    
select @ind1=charindex('.',@startip,@ind2+1)
    
select @IP3=substring(@startip,@ind2+1,@ind1-@ind2-1)

    
select @ind2=len(@startip)
    
select @IP4=substring(@startip,@ind1+1,@ind2-@ind1)

    
select @startIPBin=dbo.Dec2Bin(@IP1,8)+dbo.Dec2Bin(@IP2,8)+dbo.Dec2Bin(@IP3,8)+dbo.Dec2Bin(@IP4,8)
    
    
return @startIPBin
end




GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

 
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:50225次
    • 积分:721
    • 等级:
    • 排名:千里之外
    • 原创:10篇
    • 转载:45篇
    • 译文:0篇
    • 评论:3条
    最新评论
    加密解密