快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

SQL中与IP相关的常见问题


1:得到客户端的IP地址
/************* IP **************/
declare @ip varchar(20),@hst varchar(20),@sql varchar(100)
declare @str varchar(100)
set @str=\\\'PING \\\'+Host_Name()
create table #tmp(aa varchar(200))
insert #tmp exec master..xp_cmdshell @str
select top 1 @ip = replace(left(aa,charindex(\\\':\\\',aa)-1),\\\'Reply from \\\',\\\'\\\')
from #tmp where aa like \\\'reply from %:%\\\'
drop table #tmp
select @ip


2:得到网卡的物理地址
create table #tb(re varchar(255))
insert into #tb exec master..xp_cmdshell \\\'ipconfig /all\\\'

select 网卡物理地址=substring(re,charindex(\\\':\\\',re)+1,255) from #tb where re like \\\'%Physical Address. . . . . . . . . :%\\\'

drop table #tb

3: 将IP地址段转成每三位用点号分开
create function getIP(@a varchar(15))
returns varchar(15)
As
begin
declare @s varchar(15)
set @s = \\\'\\\'
while charindex(\\\'.\\\',@a) > 0
begin
set @s = @s + right(\\\'000\\\' + left(@a,charindex(\\\'.\\\',@a)),4)
set @a = right(@a,len(@a)-charindex(\\\'.\\\',@a))
end
set @s = @s + right(\\\'000\\\' + @a,3)
return @s
end

/*
Select dbo.getIP(\\\'202.1.110.2\\\')
---------------
202.001.110.002

(所影响的行数为 1 行)
*/
--drop function getIP
返回类别: 教程
上一教程: 多用户权限与数据治理的一种方式
下一教程: 破解所有版本ACCESS密码

您可以阅读与"SQL中与IP相关的常见问题"相关的教程:
· SQL中与IP相关的常见问题
· SQL SERVER2000+JDBC常见问题及解决
· SQL Server 2005 常见问题解答
· SQL Server 2005常见问题解答
· SQL Server补丁安装常见问题
    微笑服务 优质保证 索取样品