結合テーブルからデータを収集しようとしていますが、現在はnull表示(エラーはありません)があります。私のコードは効率的ではありません。しかしここに私がしようとしているものです:VB.Net)結合テーブルの条件データリーダーを使用
conn.Open()
sqlcmd = New MySqlCommand("select tabsen.id_absen, tsiswa.NIS, tsiswa.nama, tabsen.alpa, tabsen.izin, tabsen.sakit, tabsen.tahun_ajaran from tabsen join tsiswa on tabsen.NIS = tsiswa.NIS where tsiswa.NIS like '%" & txtnis.Text & "%'", conn)
dr = sqlcmd.executereader()
dr.Read()
If dr.HasRows Then
txtid.Text = dr.Item("id_absen")
txtnis.Text = dr.Item("NIS")
txtnama.Text = dr.Item("nama")
txta.Text = dr.Item("alpa")
txti.Text = dr.Item("izin")
txts.Text = dr.Item("sakit")
cmbtahun.Text = dr.Item("tahun_ajaran")
txta.Focus()
btnsave.Text = "UPDATE"
btndelete.Enabled = True
txtjumlah.Enabled = True
cmbpredikat.Enabled = True
cmbtahun.Enabled = True
txtnis.Enabled = False
dr.Close()
Else
While dr.Read()
txtnama.Text = dr("nama")
End While
dr.Close()
MsgBox("data absensi belum diisi")
End If
conn.Close()
行が見つかった場合、それは魅力のように動作します。しかし、テーブル 'tabsen'の上に空があるとき、エラーはありませんが、txtnama.Textは 'nama'を表示しませんでした。
私は誰もがコードを見ることによって理解すると思います。私の英語は十分ではないので、私はそれほど説明できません。
あなたが(暗黙)(https://www.w3schools.com/sql/sql_join_inner.asp)[内部結合]を持つ2つのテーブルを結合しました。 'tabsen'が空のデータを生成できる場合は、[右外部結合](https://www.w3schools.com/sql/sql_join_right.asp)(またはテーブルの切り替え時には左外部結合)を行う必要があります。両方とも空の場合は、[完全外部結合](https://www.w3schools.com/sql/sql_join_full.asp)に移動する必要があります。 –
*空のデータ=データなし –
現在固定です。ありがとうございます – Ryan