选择并显示属于特定 ID 的所有行

2024-03-09

I have

Table student, 学生科目 and 主题_bsit

      "student"
-----------------------
|studentID | FullName |
-----------------------
|1234      | John    |
|1235      | Michael |
|1236      | Bryce   |

        "subject_bsit"
-----------------------------------
|subject_id| subject_name  |grade |
-----------------------------------
|    1     | Programming   |  3   |
|    2     | Networking    |  2.5 |
|    3     | Algorithm     |  1.75|
|    4     | Physical Educ |  2   |

This is the Junction table to connect the 
two now.

       "student_subject"
----------------------------
| student_id | subject_id |
----------------------------
|   1235     |      1     |
|   1235     |      2     |
|   1235     |      3     |
|   1234     |      1     |

正如您所看到的,表 ID 1235 是 michael,他有 3 个科目,subject_id 1,2 和 3。我想要做的是在文本框中显示 michael 的所有科目名称和成绩,而不是在数据网格视图中。

截至目前,我仍然无法将其输出到文本框。这是我的示例查询

    sql = "SELECT subject_name " & _
        " FROM student_subject " & _
        " INNER JOIN subject_bsit ON subject_bsit.subject_id = student_subject.sub_id" & _
        " where student_subject.student_id='" & Txtbox.Text & "'"

最后一个查询中的 Txtbox.text 是用户输入 ID 号的位置。

这是我将数据显示到文本框的代码。我对如何在文本框上循环并将其显示在每个文本框上没有任何想法或方法。

 cmd = New MySqlCommand(sql, myconn)
    dr = cmd.ExecuteReader

    While dr.Read
        TextBox1.Text = dr.Item("subject_name").ToString
        TextBox2.Text = dr.Item("subject_name").ToString
    End While

这是我想要实现的示例用户界面。太感谢了。


当您读取查询的结果集时,您会使用循环。

While dr.Read
    ' run this for every row in your resultset 
    ...
End While

The While循环继续进行,直到读完所有行。

您不必使用循环。如果您希望一次读取一行,就像这样

 If dr.Read
    ' just the first row
 End If
 If dr.Read
    ' just the second row
 End If
 If dr.Read
    ' just the third row
 End If
 ...

从你的问题我猜你有Textbox1, Textbox2, ... Textbox5在您的表格上。我也猜你有Grade1, Grade2 ....

要同时处理科目名称和成绩,请将查询的第一行更改为

   sql = "SELECT subject_name, grade " & _

您可以像这样填充这些项目:

 If dr.Read
    TextBox1.Text = dr.Item("subject_name").ToString
    Grade1.Text = dr.Item("grade").ToString
 End If
 If dr.Read
    TextBox2.Text = dr.Item("subject_name").ToString
    Grade2.Text = dr.Item("grade").ToString
 End If
 If dr.Read
    TextBox3.Text = dr.Item("subject_name").ToString
    Grade3.Text = dr.Item("grade").ToString
 End If
 ' more of these sets of four lines to fill your whole form.

这解决了你的问题。但您可能会注意到它重复得荒谬。您真正需要的是一个文本框数组(实际上是两个数组)。您在程序中创建并填充这些文本框。我还没有调试过这个:那是你要做的。

  Dim Subjects As Textbox()
  Dim Grades As Textbox()
  ...

  Dim rownumber, Y
  rownumber = 0
  Y = 200
  Dim Subject
  Dim Grade
  While dr.Read
    Subject = New Textbox
    Subject.Text = dr.Item("subject_name").ToString
    Subject.Width = 200
    Subject.Height = 40
    Subject.X = 175
    Subject.Y = Y
    Subjects(rownumber) = Subject
    Form.Controls.Add(Subject)
    Grade = New Textbox
    Grade.Text = dr.Item("grade").ToString
    Grade.Width = 50
    Grade.Height = 40
    Grade.X = 400
    Grade.Y = Y
    Grades(rownumber) = Grade
    Form.Controls.Add(Grade)
    rownumber = rownumber + 1
    Y = Y + 50
  End While

运行时,您将拥有两列控件,每个控件对应一列。但是这段代码很复杂,您必须使用以下命令来完成表单的所有布局Something.Y = value进而Y = Y + 50算术。

这就是网格控件存在的原因。他们负责处理这类事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

选择并显示属于特定 ID 的所有行 的相关文章

  • 用 PDO 和准备好的语句替换 mysql_* 函数

    我总是做简单的连接mysql connect mysql pconnect db mysql pconnect host user pass if db echo strong Error strong Could not connect
  • GoLang - 坚持使用 ISO-8859-1 字符集

    我正在开发一个项目 我们需要将信息保存在具有 ISO 8859 1 表的旧数据库中 因此 在向数据库写入内容之前 我需要将其从 UTF 8 转换为 ISO 8859 1 每次从数据库检索它时 我都需要将其转换回 UTF 8 我试图使用图书馆
  • 下拉选择字段是否容易受到任何类型注入的影响

    我在这里读到了 永远不要相信用户输入 这句话 这是有道理的 我可以理解用户输入的任何字段都是可疑的 但是 下拉选择字段怎么样 它们可以用于任何类型的注射吗 我已经清理了允许用户输入的所有字段 并且还使用 mysqli 准备好的语句插入数据库
  • sudo yum install postfix mysql-libs 错误

    我正在尝试通过 yum 安装 postfix sudo yum install postfix 运行下面的代码后 出现以下错误 Loading mirror speeds from cached hostfile rpmforge mirr
  • T SQL - 相关子查询的雄辩替换

    我有一个查询当前正在使用相关子查询来返回结果 但我认为可以使用 ROW NUMBER 更雄辩地解决该问题 问题在于某个项目多年来的值 v 的概况 每个项目都有多个版本 每个版本都有自己的配置文件 该配置文件在版本引入时启动 当前数据如下所示
  • PHP MySQL从2个表中获取数据

    我正在尝试合并数据库中的 2 个表 文件表 id file name file description file url access files 表 id student id file id 这是我的sql代码 当前从文件表中获取所有文
  • 如何使这条 SQL 行更加高效? (分区依据时的情况)

    我有一个看起来像这样的 SQL 行 SUM Unit Retail OVER PARTITION BY CASE WHEN LocalDetailLevel master THEN Master Item WHEN LocalDetailL
  • 我的项目中的更新语句未更新表中的数据

    我正在尝试更新 Employee MY 查询显示消息 员工记录已成功更新 但它没有在表中更新我的代码如下 eid intval GET uin uin POST uin fname POST firstName lname POST las
  • 按每组的最近日期获取第一个元素

    我在 django 中有以下模型 Business ID Business Name Business Revenue Date 这是示例数据 Business ID Business Name Business Revenue Date
  • sql语句中的[]括号

    sql语句中的括号有什么作用 例如 在声明中 insert into table1 columnname1 columnname2 values val1 val2 另外 如果表名在括号中 它会做什么 标记标识符的分隔符 因此如果您的列名称
  • PHP:如果记录存在则显示 HTML,否则不显示任何内容

    我是 PHP 新手 我正在尝试构建一个小型客户数据库 在我的数据库中 我有一个名为 suspended state 的列 其值可以是 yes 或 no 如果是 我希望它显示 暂停 如果不是 我希望它显示 活动 这是我的代码 但是 无论列是
  • 面向对象的数据库是否比带有 ORM 的关系数据库更好?

    只是认为带有 ORM 的关系数据库在很多方面与面向对象的数据库非常相似 我的经验仅在于带有一点 ORM 的 RDMS 所以在我看来 面向对象的数据库非常相似 但没有经验我不能肯定地说 如果您使用过面向对象数据库和 ORM 您能比较它们吗 与
  • SQL Server 将 varbinary 转换为字符串

    我想在 T SQL 中进行转换varbinary类型转字符串类型 这是一个例子 首先我得到了这个varbinary 0x21232F297A57A5A743894A0E4A801FC3 然后我想将其转换为 21232f297a57a5a74
  • MySQL全文停用词问题

    我有一个名为 products 的数据库和一个包含以下列的全文索引 title and description 我所有的产品都是润滑油 油 有工业用和汽车用两种 比例在55 45 如果我在 auto moto 油之后进行搜索 那么它将不会返
  • SqlDataSource和存储过程调用问题

    我偶然发现了一个问题 但无法自己解决 希望有人能帮我解决 所以 我在 SQL Server 2005 数据库中有一个简单的存储过程 CREATE PROCEDURE spTest pin varchar 128 AS BEGIN SELEC
  • 如何在 SQL 中将整数列值加 1

    我的问题是 如何将列的值加 1 例如 假设有一列ID值为 1 2 3 4 现在当我更新这张表时ID列应增加 1 Now ID将变成 2 3 4 5 为表中的每个值加一 UPDATE myTable SET ID ID 1 要创建一个新值 比
  • 显示我与引座员有共同点的条目,按好恶分开

    我有一个类似于 Facebook 上的页面系统 每个用户都可以喜欢或什至不喜欢某个页面 status 1是一个喜欢 0是一种不喜欢 这是我的查询 SELECT p title de de p keyname l status CASE WH
  • MySQL数据文件不会收缩

    随着时间的推移 我的 MySQL 数据库 ibdata1 文件增长到大约 32GB 最近我从数据库中删除了大约 10GB 的数据 并重新启动了 mysql 以达到更好的效果 但文件不会缩小 有什么办法可以减小这个文件的大小 无论删除多少数据
  • 使用 PHP 安全连接 MySQL 的最佳方法[重复]

    这个问题在这里已经有答案了 我想了解一下你们认为使用 PHP 连接到 MySQL 数据库的最安全方法 目前我正在做的方式是一个实用程序 PHP 文件 我将其包含在所有其他 PHP 文件的顶部 实用程序 PHP 文件是这样的 有什么建议么 建
  • 在 Visual Basic 2010 的控件中显示 PDF

    我刚刚安装了 Visual Basic 2010 浏览了一些有关如何显示文件的教程 但找不到任何有关如何选择现有 PDF 文件并将其嵌入表单的材料 任何正确方向的建议或指示都会很棒 谢谢 只需在表单中嵌入浏览器控件并将其导航到 PDF 文件

随机推荐

  • 如何使用 tf.keras.utils.image_dataset_from_directory 应用 kfold 交叉验证

    我的目标是应用 k 折交叉验证来训练 VGG19 模型 为此 我使用以下代码从目录中读取图像 DIR Images data dir pathlib Path os getcwd Images train ds tf keras utils
  • 将二进制字符串转换为字节数组

    我有一个由 1 和 0 组成的字符串 我想将其转换为字节数组 例如String b 0110100001101001 我怎样才能将其转换为byte 长度为2 将其解析为以 2 为基数的整数 然后转换为字节数组 事实上 既然你已经有了 16
  • Android 中的 xml 解析

    我是安卓新手 我想要示例如何在 android 中解析 xml 文件 有人可以为我提供一个程序吗 那里有很多例子 这是一个例子CLICK http d codepages com index php android coding advan
  • 从另一个活动中删除行

    我有一个由自定义数组适配器膨胀的列表视图 onclick 将其带到另一个具有与该行相关的数据的活动 单击删除后 它应该从列表中删除该项目并返回到列表 我为此使用下面的代码 int deleteposition CustomizedListV
  • Ken Burns 在 Twitter 上的 Bootstrap 轮播

    我怎样才能申请肯 伯恩斯效应 http en wikipedia org wiki Ken Burns effect在 Twitter Bootstrap 轮播上 carousel item img webkit transition al
  • 如何以线程安全的方式使用CXF客户端

    我已经使用以下服务创建了客户端存根apache cxf的 wsdl2java 命令 http wsf cdyne com WeatherWS Weather asmx WSDL http wsf cdyne com WeatherWS We
  • 核心数据和核心位置

    我有一个具有纬度和经度属性的核心数据数据库 有没有办法使用核心位置getDistanceFrom 找到离a最近的5个位置的方法CLLocation从 GPS 获取 我是否必须使用 Core Data 加载所有对象并使用它们解析它们getDi
  • LINQ - 如何为 select 语句中的子对象提供对其父对象的引用?

    我正在尝试做这样的事情 List
  • 何时使用 doOnTerminate 与 doOnUnsubscribe?

    当有人订阅我的可观察对象时 我需要收到通知 我还需要收到通知 可观察对象已出错或已完成 所以我想我应该使用doOnSubscribe 注册观察者订阅时要采取的操作 可观察的 and doOnTerminate 注册一个 Observable
  • 检测状态更新是否在 React Hooks 中批量进行?

    正如中所解释的这个问题 https stackoverflow com a 54496445 1804173 React 在 React 事件处理程序中批处理状态更新调用 如果状态更新是从基于 React 的事件 例如按钮单击或输入更改 中
  • JavaScript 导出/导入不起作用

    这可能是一个愚蠢的问题 但我无论如何也无法解决它 我有一个 JavaScript 文件 其中包含我想要导出的各种函数 export function AddNumbers numbers let value 0 for var i 0 i
  • 如何从 youtube/v3/channels API 获取 Youtube 频道的链接(网站)?

    查看文档 https developers google com youtube v3 docs channels list https developers google com youtube v3 docs channels list
  • 窗体上的所有控件都是不可见的

    我遇到了一个奇怪的问题 仅给出这段代码 我已将其缩减为最基本的部分 表单将出现 但其上的所有控件都是不可见的 即使它们各自的Visible属性为真 static class Program STAThread static void Mai
  • 此应用程序会出现在 Play 商店中吗?

    我在很多地方听说过 如果我的应用程序使用不适用于特定设备的权限 它就不会显示在该设备的 Play 商店中 现在 在我的代码中 我正在播放音频 每当有电话来电时 我都会通过执行以下操作将音频静音 private PhoneStateListe
  • 有没有办法调用重写方法的父版本? (C#.NET)

    在下面的代码中 我尝试了两种方法来访问methodTwo的父版本 但结果始终是2 有没有办法在不修改这两个类的情况下从ChildClass实例获取1结果 class ParentClass public int methodOne retu
  • Java选择音频设备并播放.mp3

    我的电脑有 3 个声卡 我可以使用此代码选择并播放 wav 文件 import javax sound sampled AudioInputStream audioIn AudioSystem getAudioInputStream url
  • PHP 的 sha1() 和 MySQL 的 SHA() 会给出相同的结果吗?

    如果不加盐 它们会一样吗 是的 sha1 算法对于相同的输入总是产生相同的值 这就是哈希算法的全部意义 默认情况下 它们都返回 40 个字符的小写十六进制转储
  • THttpApiServer - 示例

    有人有 THttpApiServer 的示例 在 Synopse 上找到 吗 我无法找到任何有关使用此类创建简单网络服务器的文档 你可以有使用我们的论坛 http synopse info forum viewtopic php id 26
  • 多个蓝牙连接

    我想通过蓝牙连接 3 个设备 我的 Droid 必须连接到 2 个蓝牙设备 我已使用蓝牙聊天将我的 Droid 连接到 1 台设备 我应该如何修改它以适应多个蓝牙设备 我正在寻找一种通过蓝牙连接 4 台设备的方法 我发现了以下内容 http
  • 选择并显示属于特定 ID 的所有行

    I have Table student 学生科目 and 主题 bsit student studentID FullName 1234 John 1235 Michael 1236 Bryce subject bsit subject