Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 是否从内部联接表中检索列数据?_C#_Mysql - Fatal编程技术网

C# 是否从内部联接表中检索列数据?

C# 是否从内部联接表中检索列数据?,c#,mysql,C#,Mysql,我试图选择一个表上的所有(*)数据列,并通过内部连接另一个表来获取菜单项名称。请看一下我的问题 string query = "SELECT ol.*, m.menu_name " + "FROM orderlist ol " + "INNER JOIN menudb m " + "ON m.menu_ID = ol.menu_ID " + "WHERE ol.orde

我试图选择一个表上的所有(*)数据列,并通过内部连接另一个表来获取菜单项名称。请看一下我的问题

string query = "SELECT ol.*, m.menu_name " +
                "FROM orderlist ol " +
                "INNER JOIN menudb m " +
                "ON m.menu_ID = ol.menu_ID " +
                "WHERE ol.order_ID = @orderID";
使用
dr[“menu\u name”]检索
m.menu\u name时,我似乎无法获取它。ToString()

你知道为什么吗

订单列表表列

orderlist\u ID
订单ID
菜单ID
订单数量

menudb表列


菜单标识
菜单名称
菜单价格
菜单描述
菜单类别
菜单状态

您在
ol.菜单标识
后错过了s空格

"ON m.menu_ID = ol.menu_ID "+

您在
ol.menu\u ID
之后错过了s空格

"ON m.menu_ID = ol.menu_ID "+

您的查询中存在许多问题

首先,由于关键字之间缺少空格,出现语法错误

"ON m.menu_ID = ol.menu_ID" +     // << HERE
"WHERE ol.order_ID = '@orderID'";
第二个,如果将查询参数化,则不应使用单个引号包装参数。这将使其成为字符串而不再是参数

"WHERE ol.order_ID = @orderID"; // remove single quote

您的查询中存在许多问题

首先,由于关键字之间缺少空格,出现语法错误

"ON m.menu_ID = ol.menu_ID" +     // << HERE
"WHERE ol.order_ID = '@orderID'";
第二个,如果将查询参数化,则不应使用单个引号包装参数。这将使其成为字符串而不再是参数

"WHERE ol.order_ID = @orderID"; // remove single quote

你能展示这两个表的结构吗:
orderlist
menudb
?我知道了,伙计:)谢谢。你能展示这两个表的结构吗:
orderlist
menudb
?我知道了,伙计:)非常感谢