首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询IP地址时出现C# MySql语法异常

查询IP地址时出现C# MySql语法异常
EN

Stack Overflow用户
提问于 2013-04-03 06:21:45
回答 2查看 83关注 0票数 0

我正在查询存储在数据库表中的IP地址,如下所示:

代码语言:javascript
复制
"SELECT user_id, is_login FROM users WHERE last_ip_address = '" + this.GetIPAddress() + "'"

我知道IP在表中,因为我在那里看到它。我真的盯着它看,但是这个查询没有返回任何行。

当我运行它时,没有使用单勾引号('),我得到一个语法错误:

代码语言:javascript
复制
"SELECT user_id, is_login FROM users WHERE last_ip_address = " + this.GetIPAddress()

那么,哪里出了问题呢?函数返回的IP是标准格式的###.###.###.### IP地址,语法错误本身如下:

代码语言:javascript
复制
{"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '.##.#' at line 1"}

编辑:更多信息,这个字段本身是一个varchar(30)类型,它显示Collation = latin1_swedish_ci,但我甚至不知道这是什么。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2013-04-03 06:42:20

尝试使用LIKE,然后:

代码语言:javascript
复制
"SELECT user_id, is_login FROM users WHERE last_ip_address LIKE '%" + this.GetIPAddress() + "%'"

编辑:我会尝试将排序规则更改为UTF8。

票数 0
EN

Stack Overflow用户

发布于 2013-04-03 11:48:46

好的,很抱歉给您造成了混乱。我对在C#中使用MySql非常陌生,对MySqlConnector也是非常非常陌生(就像我是说我今天才开始)。

长话短说,当我需要做的是使用MySqlDataReader时,我试着把这个表当作一个表,并像一个二维数组一样读取它。我在这里找到了一个好的答案:

How to read columns and rows with C#?

感谢您的帮助和建议。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15775500

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档