使用top命令时出现Sql查询错误 [英] Sql query error while using top command
本文介绍了使用top命令时出现Sql查询错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这里我使用Mysql和Asp.Net找到前5名学生。但是我收到以下错误
conn1。< span class =code-keyword> Open ();
conn2。打开();
string sql1 = 选择TOP 5`btechstudent_details`.Regd_no,Sname,Btech,Branch来自btechstudent_details,btechstudent_academics在哪里`btechstudent_details`.Regd_no =`btechstudent_academics`.Regd_no订购Btech DESC;;
MySqlCommand com1 = new MySqlCommand(sql1,conn1);
MySqlDataAdapter da1 = new MySqlDataAdapter(com1);
DataSet ds = new DataSet();
da1.Fill(ds, Regd_no);
Show.DataSource = ds.Tables [ Regd_no];
Show.DataBind();
错误 - SQL中有错误句法;检查与MySQL服务器版本对应的手册,以便在'5`btechstudent_details`附近使用正确的语法.Regd_no,Sname,Btech,Branch FROM btechstudent_details,bt'在第1行
解决方案
据我所知,MySQL不支持TOP子句。相当于LIMIT
所以相当于SELECT TOP 5 * FROM YourTable是
SELECT * FROM YourTable LIMIT 0 , 5
onn1.Open();
conn2.Open();
string sql1 =select TOP 5 btechstudent_details.Regd_no,Sname,Btech,Branch FROM btechstudent_details,btechstudent_academics WHERE btechstudent_details.Regd_no = btechstudent_academics.Regd_no ORDER BY Btech DESC;;
MySqlCommand com1 = new MySqlCommand(sql1,conn1);
MySqlDataAdapter da1 = new MySqlDataAdapter(com1);
DataSet ds = new DataSet();
da1.Fill(ds,Regd_no);
Show.DataSource = ds.Tables [Regd_no];
Show.DataBind();
从SQL查询中删除单引号。
希望这会有所帮助。
Here I use Mysql with Asp.Net to find top 5 students.But I get the following error
conn1.Open();
conn2.Open();
string sql1 = "select TOP 5 `btechstudent_details`.Regd_no,Sname,Btech,Branch FROM btechstudent_details,btechstudent_academics WHERE `btechstudent_details`.Regd_no=`btechstudent_academics`.Regd_no ORDER BY Btech DESC;";
MySqlCommand com1 = new MySqlCommand(sql1, conn1);
MySqlDataAdapter da1 = new MySqlDataAdapter(com1);
DataSet ds = new DataSet();
da1.Fill(ds, "Regd_no");
Show.DataSource = ds.Tables["Regd_no"];
Show.DataBind();
ERROR-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 '5 `btechstudent_details`.Regd_no,Sname,Btech,Branch FROM btechstudent_details,bt' at line 1
解决方案
As far as I know MySQL does not support the TOP clause. The equivalent is LIMIT
So the equivalent ofSELECT TOP 5 * FROM YourTableis
SELECT * FROM YourTable LIMIT 0,5
onn1.Open();
conn2.Open();
string sql1 = "select TOP 5 btechstudent_details.Regd_no,Sname,Btech,Branch FROM btechstudent_details,btechstudent_academics WHERE btechstudent_details.Regd_no=btechstudent_academics.Regd_no ORDER BY Btech DESC;";
MySqlCommand com1 = new MySqlCommand(sql1, conn1);
MySqlDataAdapter da1 = new MySqlDataAdapter(com1);
DataSet ds = new DataSet();
da1.Fill(ds, "Regd_no");
Show.DataSource = ds.Tables["Regd_no"];
Show.DataBind();
Remove single quotes from SQL query.
Hope this will help.
这篇关于使用top命令时出现Sql查询错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文