Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,028

HOME > .NET Framework > Forum > ขอโค้ด Function CheckBox ที่ใช้เรียกฐานข้อมูลจาก SQL ของ VB ทีครับ



 

ขอโค้ด Function CheckBox ที่ใช้เรียกฐานข้อมูลจาก SQL ของ VB ทีครับ

 



Topic : 081590



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



คือว่าผมต้องการให้ CheckBox ใช้เรียกฐานข้อมูลจาก SQL
ตัวอย่างเช่น
เมื่อคลิก CheckBox1 จะเรียกข้อมูล name จากฐานข้อมูล SQL ขึ้นมา
เมื่อคลิก CheckBox2 จะเรียกข้อมูล address จากฐานข้อมูล SQL ขึ้นมา
เมื่อคลิก CheckBox3 จะเรียกข้อมูล phone จากฐานข้อมูล SQL ขึ้นมา
และเมื่อคลิก CheckBox1+CheckBox2+CheckBox3 จะเรียกข้อมูล name + address + phone จากฐานข้อมูล SQL ขึ้นมาแสดงต่อๆกัน

โดยปกติผมจะใช้โค้ดแบบนี้

Code (VB.NET)
If CheckBox1.Checked = True And CheckBox2.Checked = True And CheckBox3.Checked = True Then
                strSQL = "SELECT name,address,phone FROM history"
            ElseIf CheckBox1.Checked = True And CheckBox2.Checked = True And CheckBox3.Checked = False Then
                strSQL = "SELECT name,address FROM history"
            ElseIf CheckBox1.Checked = True And CheckBox2.Checked = False And CheckBox3.Checked = True Then
                strSQL = "SELECT name,phone FROM history"
            ElseIf CheckBox1.Checked = False And CheckBox2.Checked = True And CheckBox3.Checked = True Then
                strSQL = "SELECT address,phone FROM history"
            ElseIf CheckBox1.Checked = True And CheckBox2.Checked = False And CheckBox3.Checked = False Then
                strSQL = "SELECT name FROM history"
            ElseIf CheckBox1.Checked = False And CheckBox2.Checked = True And CheckBox3.Checked = False Then
                strSQL = "SELECT address FROM history"
            ElseIf CheckBox1.Checked = False And CheckBox2.Checked = False And CheckBox3.Checked = True Then
                strSQL = "SELECT phone FROM history"
            Else
                MessageBox.Show("กรุณาเลือกคำสั่ง", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
            End If


แต่ว่าในงานจริงๆของผมมี CheckBox ที่จะใช้เรียกข้อมูลขึ้นมาแสดงเป็น สิบๆ CheckBox
จึงอยากจะขอ Function หรือ วิธีมาใช้ช่วยในการลดขนาดของโค้ด
รบกวนช่วยที



Tag : .NET, VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-07-26 16:42:20 By : KT-Revenue View : 1946 Reply : 15
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

ลองใช้พวก StringBuilder ครับ เช่น

Code (VB.NET)
Dim strSQL As New StringBuilder()
strSQL.Append(" SELECT 1 ")

If CheckBox1.Checked = True  Then
	strSQL.Append(" ,name ")
ElseIf CheckBox2.Checked = True Then
	strSQL.Append(" ,address ")
ElseIf CheckBox3.Checked = True  Then
	strSQL.Append(" ,phone ")
End If

strSQL.Append(" FROM table ")
strSQL.Append(" WHERE ... ")

'use strSQL.ToString()



' 1 เป็นค่าที่ป้องกัน , error ครับ ไม่มีผลอะไรค่อ query






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 05:51:07 By : mr.win
 


 

No. 2



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ลองดูแล้วเกิด error
ประมาณบรรทัดที่ 39

Code (VB.NET)
Imports System.Data
Imports System.Data.SqlClient
Imports System.Text
Public Class FrmMuntiCheckBox
    Dim conn As New SqlConnection
    Dim da As SqlDataAdapter
    Dim ds As New DataSet()

    Private Sub BtnExecSQL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExecSQL.Click
        Dim strconn As String = ""
        strconn = "Data Source=SGH120QXPK-HP;Initial Catalog=dbTEST2;Integrated Security=True"
        If conn.State = ConnectionState.Open Then
            conn.Close()
        Else
            conn.ConnectionString = strconn
            conn.Close()
        End If

        Dim strSQL As New StringBuilder()
        strSQL.Append(" SELECT 1 ")

        If CheckBox1.Checked = True Then
            strSQL.Append(" ,name ")
        ElseIf CheckBox2.Checked = True Then
            strSQL.Append(" ,address ")
        ElseIf CheckBox3.Checked = True Then
            strSQL.Append(" ,phone ")
        Else
            MessageBox.Show("กรุณาเลือกคำสั่ง", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End If

        strSQL.Append(" FROM history ")
        'use strSQL.ToString()


        dgvSQL.ColumnHeadersVisible = True
        dgvSQL.RowHeadersVisible = True

        da = New SqlDataAdapter(strSQL, conn)           // ลองดูแล้วครับตรงนี้เกิด error
        ds.Tables.Clear()
        da.Fill(ds, "history")
        dgvSQL.DataSource = ds.Tables("history")
        TxtResult.Text = "สำเร็จ : มีข้อมูลทั้งหมด" & ds.Tables("history").Rows.Count.ToString & "แถว"
        TxtRow.Text = ds.Tables("history").Rows.Count.ToString
    End Sub

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 10:08:41 By : KT-Revenue
 

 

No. 3

Guest


strSQL.ToString()
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 11:44:00 By : อิอิ
 


 

No. 4



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ใส่ตรงไหนอะคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 13:45:47 By : KT-Revenue
 


 

No. 5



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (VB.NET)
da = New SqlDataAdapter(strSQL.ToString(), conn) 


อุสารห์เขียน Comment ไว้น่ะเนีย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-27 21:22:30 By : mr.win
 


 

No. 6



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอโทษคับมือใหม่ก็งี้ล่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-30 14:15:53 By : KT-Revenue
 


 

No. 7



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

คราวนี้ error บรรทัดที่ 41 ครับ

Code (VB.NET)
Imports System.Data
Imports System.Data.SqlClient
Imports System.Text
Public Class FrmMuntiCheckBox
    Dim conn As New SqlConnection
    Dim da As SqlDataAdapter
    Dim ds As New DataSet()

    Private Sub BtnExecSQL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExecSQL.Click
        Dim strconn As String = ""
        strconn = "Data Source=SGH120QXPK-HP;Initial Catalog=dbTEST2;Integrated Security=True"
        If conn.State = ConnectionState.Open Then
            conn.Close()
        Else
            conn.ConnectionString = strconn
            conn.Close()
        End If

        Dim strSQL As New StringBuilder()
        strSQL.Append(" SELECT 1 ")

        If CheckBox1.Checked = True Then
            strSQL.Append(" ,name ")
        ElseIf CheckBox2.Checked = True Then
            strSQL.Append(" ,address ")
        ElseIf CheckBox3.Checked = True Then
            strSQL.Append(" ,phone ")
        Else
            MessageBox.Show("กรุณาเลือกคำสั่ง", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End If

        strSQL.Append(" FROM history ")
        'use strSQL.ToString()


        dgvSQL.ColumnHeadersVisible = True
        dgvSQL.RowHeadersVisible = True

        da = New SqlDataAdapter(strSQL, conn)          
        ds.Tables.Clear()
        da.Fill(ds, "history")                                               // error ตรงนี้ครับ
        dgvSQL.DataSource = ds.Tables("history")
        TxtResult.Text = "สำเร็จ : มีข้อมูลทั้งหมด" & ds.Tables("history").Rows.Count.ToString & "แถว"
        TxtRow.Text = ds.Tables("history").Rows.Count.ToString
    End Sub

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-31 13:36:45 By : KT-Revenue
 


 

No. 8

Guest


ลองใช้ common sense ดู ตอบไปแล้ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-31 14:13:36 By : อิอิ
 


 

No. 9



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

common sense ??
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-31 15:05:30 By : KT-Revenue
 


 

No. 10



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ยังไม่เข้าใจคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-07-31 15:08:10 By : KT-Revenue
 


 

No. 11



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

คราวนี้ error บรรทัดที่ 41 ครับ

Code (VB.NET)
Imports System.Data
Imports System.Data.SqlClient
Imports System.Text
Public Class FrmMuntiCheckBox
    Dim conn As New SqlConnection
    Dim da As SqlDataAdapter
    Dim ds As New DataSet()

    Private Sub BtnExecSQL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExecSQL.Click
        Dim strconn As String = ""
        strconn = "Data Source=SGH120QXPK-HP;Initial Catalog=dbTEST2;Integrated Security=True"
        If conn.State = ConnectionState.Open Then
            conn.Close()
        Else
            conn.ConnectionString = strconn
            conn.Close()
        End If

        Dim strSQL As New StringBuilder()
        strSQL.Append(" SELECT 1 ")

        If CheckBox1.Checked = True Then
            strSQL.Append(" ,name ")
        ElseIf CheckBox2.Checked = True Then
            strSQL.Append(" ,address ")
        ElseIf CheckBox3.Checked = True Then
            strSQL.Append(" ,phone ")
        Else
            MessageBox.Show("กรุณาเลือกคำสั่ง", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End If

        strSQL.Append(" FROM history ")
        'use strSQL.ToString()


        dgvSQL.ColumnHeadersVisible = True
        dgvSQL.RowHeadersVisible = True

        da = New SqlDataAdapter(strSQL, conn)          
        ds.Tables.Clear()
        da.Fill(ds, "history")                                               // error ตรงนี้ครับ
        dgvSQL.DataSource = ds.Tables("history")
        TxtResult.Text = "สำเร็จ : มีข้อมูลทั้งหมด" & ds.Tables("history").Rows.Count.ToString & "แถว"
        TxtRow.Text = ds.Tables("history").Rows.Count.ToString
    End Sub



ช่วยทีครับ
แล้วที่บอกให้ลองใช้ common sense มันเป็นยังไง ผมยังไม่เข้าใจเลยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-01 11:18:27 By : KT-Revenue
 


 

No. 12



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Error ?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-01 20:50:54 By : mr.win
 


 

No. 13



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ได้แล้วครับ
Code (VB.NET)
Imports System.Data
Imports System.Data.SqlClient
Imports System.Text
Public Class FrmMuntiCheckBox
    Dim conn As New SqlConnection
    Dim da As SqlDataAdapter
    Dim ds As New DataSet()

    Private Sub BtnExecSQL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExecSQL.Click
        Dim strconn As String = ""
        strconn = "Data Source=SGH120QXPK-HP;Initial Catalog=dbTEST2;Integrated Security=True"
        If conn.State = ConnectionState.Open Then
            conn.Close()
        Else
            conn.ConnectionString = strconn
            conn.Close()
        End If

        Dim strSQL As New StringBuilder()
        strSQL.Append(" SELECT 1 ")

        If CheckBox1.Checked = True Then
            strSQL.Append(" ,realname ")             // ขอโทษครับที่ผิดคือผมลืมไปว่าฐานข้อมูลผมใช้ "realname" ไม่ใช่ "name"
        ElseIf CheckBox2.Checked = True Then
            strSQL.Append(" ,address ")
        ElseIf CheckBox3.Checked = True Then
            strSQL.Append(" ,phone ")
        Else
            MessageBox.Show("กรุณาเลือกคำสั่ง", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End If

        strSQL.Append(" FROM history ")
        'use strSQL.ToString()


        dgvSQL.ColumnHeadersVisible = True
        dgvSQL.RowHeadersVisible = True

        da = New SqlDataAdapter(strSQL, conn)          
        ds.Tables.Clear()
        da.Fill(ds, "history")                                              
        dgvSQL.DataSource = ds.Tables("history")
        TxtResult.Text = "สำเร็จ : มีข้อมูลทั้งหมด" & ds.Tables("history").Rows.Count.ToString & "แถว"
        TxtRow.Text = ds.Tables("history").Rows.Count.ToString
    End Sub


แต่มันไม่แสดงข้อมูลต่อเรียงกันเมื่อ CheckBox1 = True And CheckBox2 = True And CheckBox3 = True พร้อมกัน
เหมือนอย่างโค้ดเก่าของผมข้างล่างนี้นะคับ

Code (VB.NET)
If CheckBox1.Checked = True And CheckBox2.Checked = True And CheckBox3.Checked = True Then
           strSQL = "SELECT realname,address,phone, FROM history"

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-06 09:10:55 By : KT-Revenue
 


 

No. 14



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 13 เขียนโดย : KT-Revenue เมื่อวันที่ 2012-08-06 09:10:55
รายละเอียดของการตอบ ::
ช่วยทีครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-08 14:10:46 By : KT-Revenue
 


 

No. 15



โพสกระทู้ ( 218 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ลองแล้วครับแต่ข้อมูลจาก CheckBox1 , CheckBox2 , CheckBox3 มันไม่แสดงเรียงต่อๆกัน
อย่างเช่น
CheckBox1.Checked = realname
CheckBox2.Checked = address
CheckBox3.Checked = phone

ถ้า

Code (VB.NET)
CheckBox1.Checked = True
CheckBox2.Checked = True
CheckBox3.Checked = True


แล้วต้องการให้แสดงข้อมูลของ "realname","address","phone" ต่อๆกันในตาราง
ต้องทำอย่างไงครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-08-15 10:36:09 By : KT-Revenue
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอโค้ด Function CheckBox ที่ใช้เรียกฐานข้อมูลจาก SQL ของ VB ทีครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 02
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่