c# - 使用 mysql 从同一数据库中的两个不同表中选择两列 + 使用 C# 中查询的输出

标签 c# mysql

亲爱的 friend

我想使用 mysql 从同一数据库中的两个不同表中选择两列,并将查询的输出设置为 C# 中的变量。

目前我的代码如下所示:

MySqlCommand logcmdCheck = new MySqlCommand(query, connectionCheck);

string query = "SELECT DB.table1.column1,DB.table1.column2,DB.table2.column1,DB.table2.column2,DB.table2.column3 FROM DB.table1 WHERE DB.table1.column1=?x,DB.table2 WHERE DB.table2.column1=?y";

logcmdCheck.Parameters.AddWithValue("?x",UserName);
logcmdCheck.Parameters.AddWithValue("?y",emailID);

MySqlDataReader ldr = logcmdCheck.ExecuteReader();

A = ldr[0].ToString();

B = ldr[1].ToString();

C = ldr[2].ToString();

D = ldr[3].ToString();

E = ldr[4].ToString();

错误:Mysql查询语法错误。

请帮助我使用 mysql 命令来执行要求。

提前致谢

苏拉吉

最佳答案

您将必须使用 SQL 连接。在这里查看 http://www.w3schools.com/sql/sql_join.asp 。您需要在其中一个表中有一个外键,以允许您连接到另一个表的主键。每个好的数据库都应该设置有外键的表。

例如:

    Table 1:
          OrderNumber     Name         Order Total
          1               John Smith   10.00
          2               Sally Smith  5.00
          3               Berry Jones  25.00 

    Table 2:
          Item Number     ItemTotal    OrderNumber
          1               5.00         1
          2               5.00         1
          3               2.50         2
          4               2.50         2
          5               25.00        3

在表 2 中,OrderNumber 是能够连接到表 1 的外键。所以你的语法是:

    SELECT * FROM table1 JOIN table2 ON table2.OrderNumber = table1.OrderNumber

这将为您提供一张可以读取的表格。

关于c# - 使用 mysql 从同一数据库中的两个不同表中选择两列 + 使用 C# 中查询的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20403646/

相关文章:

C#:使用反射区分记录中的 init 访问器和 set 访问器

MYSQL 更新具有条件的同一个表的列

MySQL 查询与列 A 完全不同,其中没有一个在列 B 中具有特定值

php - Web 应用程序 : Preprocess and send all items in one page load, 或将项目分成单独的客户端请求?

c# - 如何更改文本框焦点颜色?

c# - ASP.NET MVC 5 模型绑定(bind)列表为空

c# - MS 图表烛台 如何设置尾部颜色

mysql - QT5.2为什么没有加载QMYSQL驱动?

php - 当日期存储在单独的表中时,如何显示与实体关联的最新日期?

c# - 使用工作流以编程方式处理所有 Sitecore 项目