在添加内部加入后,我一直收到这个错误
SELECT
character.dbo.user_character.character_name,
character.dbo.user_character.wLevel,
character.dbo.user_character.byPCClass,
character.dbo.user_character.wMapIndex,
character.dbo.user_character.wPosX,
character.dbo.user_character.wPosY,
ban_info.dbo.account_login.ip
FROM
character.dbo.user_character
INNER JOIN ban_info.dbo.account_login ON (character.dbo.user_character.wPosY=ban_info.dbo.account_login.ip)
WHERE (character.dbo.user_character.user_no='12100601280065')
错误
消息245,级别16,状态1,第1行将varchar值"127.0.0.1"转换为数据类型int.时转换失败
如何修复它>?
看看这个;http://daipratt.co.uk/mysql-store-ip-address/.。它需要一些调整来存储IP地址。
您的问题只是将存储在ban_info.dbo.account_login.ip
上的Ip地址(不是整数)与存储在character.dbo.user_character.wPosY
上的整数值进行比较,如下所示:
INNER JOIN ban_info.dbo.account_login ON (character.dbo.user_character.wPosY = ban_info.dbo.account_login.ip)
我认为应该在php(或db)中将IP地址转换为int,然后进行比较。PHP 中有函数ip2long()