首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > ASP >

ASP获取地址存到ACCESS数据库,应该设置什么数据类型?该怎么处理

2012-05-10 
ASP获取地址存到ACCESS数据库,应该设置什么数据类型?SQL语句好像不支持IP的写法?我用127.0.01不行的,如果

ASP获取地址存到ACCESS数据库,应该设置什么数据类型?
SQL语句好像不支持IP的写法?我用127.0.01不行的,如果换纯数字的话就可以,如127001,这样可以把那圆点去掉就可以,ASP如何去IP地址的圆点?

如果不转换的话,如何才不不报错?
SQL语句 
ueserip= Request.ServerVariables("HTTP_X_FORWARDED_FOR")
SELECT * FROM ip WHERE ip="&ueserip,这要改那里?

[解决办法]
ip可以存成字符型,加'来where 
sql="SELECT * FROM ip WHERE ip='"&ueserip&"'"
[解决办法]
转成数字存储当然也可以,不过还要转换二进制,比较麻烦一点。你那样直接去掉点转成数字是不行的,因为有歧义的
比如127001可能是127.0.0.1也可能是12.70.0.1
[解决办法]
存储成字符型就OK了
[解决办法]
文本。。。。
[解决办法]
VB 好像可以。
[解决办法]

文本
长度设置长一些
[解决办法]
建议IP存成数字格式,这样判断一个IP是否在一个IP段内方便点

VBScript code
' IP2N(vStr)' IP 地址转 10 进制数字'' #####################################################'' vStr 为合法的 IP 地址,或者任意小于 256 的数字与 . 构成的切头尾是数字的字符串'' #####################################################'' a = IP2N("220.160.4.17")        ' Return 3701474321' a = IP2N("218.107.61.31")        ' Return 3664461087Function IP2N(vStr)    Dim IP,intLoop    IP2N = 0    IP = Split(vStr,".")    For intLoop = 0 To UBound(IP)        IP2N = 256 ^ (UBound(IP) - intLoop) * CInt(IP(intLoop)) + IP2N    NextEnd Function' N2IP(vNum)' 数字转 IP 地址,此函数为 IP2N 的逆运算'' #####################################################'' 该函数为递归方法' vNum 为参与计算的正整数数值'' #####################################################'' a = N2IP("3701474321")        ' Return "220.160.4.17"' a = N2IP("3664461087")        ' Return "218.107.61.31"Function N2IP(vNum)    If vNum > 256 Then        N2IP = N2IP(Int(vNum / 256)) & "." & (vNum - Int(vNum / 256) * 256)    Else        N2IP = vNum    End IfEnd Function 

热点排行