0

我正在开发一个应用程序,它不时执行查询以从我的 MySQL 数据库中检索数据。我最近请一个朋友试一试,以检查它是否正常工作……显然不能。它始于他的应用程序在启动后立即停止响应。我想我们必须以某种方式对其进行调试,所以我将 Program.cs 中的 Main() 方法包装在 try..catch 语句中。返回错误“”您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在第 1 行“”附近使用的正确语法。现在我已将此错误缩小到两个可能的查询。他们来了:

查询一:

"SELECT COUNT(*) FROM " + newsTable + " ;"

newsTable 包含:新闻

查询 2:

"SELECT " + newsTitle + ", " + newsAuth + " FROM " + newsTable + " ORDER BY " + newsID + " DESC LIMIT " + countnews + ", " + countnews + 1 + ";" 

它们都包含字符串,除了 countnews 变量包含一个整数。

这一切的奇怪之处在于,当我在我的计算机上启动应用程序时,这个错误从未发生过,但工作得很好。他刚刚更新了 MySQL,我们在同一个 .NET 框架上,4。

我没主意了!

提前致谢,

弗雷德里克

PS:值得注意的是,这两个查询都位于我的表单应用程序的 Main() 方法中。当然它是在 InitializeComponent(); 之后放置的。

4

2 回答 2

0

如果您想了解:-为您的 2 个查询而不是 sql 注入创建两个存储过程,为什么?因为: - 存储过程很容易在 MySql 数据库上测试,如果它有效,它可以在任何地方工作 - 尝试使用 c# sql 调试是一个糟糕的 id,就像你的帖子显示它一样挑剔;-)

于 2012-08-04T02:22:09.463 回答
0

对,所以我又经历了一遍,发现人为因素的缺失又来了。我忘了用 .sql 导出实际的数据,这对我来说真的很迟钝,现在是凌晨 03:00 .. 感谢您尝试帮助我解决这个愚蠢的问题,非常感谢。

弗雷德里克

于 2012-08-04T10:13:45.913 回答