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

Registered : 107,914

HOME > .NET Framework > Forum > ช่วยหน่อยนะคะ update แบบวน loop พอกดบันทึกค่าใน database เปลี่ยนตามที่ต้องการค่ะแต่มันerror มีภาพประกอบค่ะ T^T



 

ช่วยหน่อยนะคะ update แบบวน loop พอกดบันทึกค่าใน database เปลี่ยนตามที่ต้องการค่ะแต่มันerror มีภาพประกอบค่ะ T^T

 



Topic : 071651

Guest




Code (VB.NET)
For i As Integer = 0 To DgvPackage.Rows.Count - 1

                Dim sb As New StringBuilder
                Dim s2 As String = ""

                sb.Append("Update SALEPACKAGE set Coupons_Remain = @cou")
                sb.Append(" where Member_ID = @memid and Package_ID = @pid")


                s2 = sb.ToString

                Dim cm1 As New SqlCommand
                With cm1
                    .CommandType = CommandType.Text
                    .CommandText = s2
                    .Connection = cn
                    .Parameters.Clear()

                    .Parameters.Add("@memid", SqlDbType.NVarChar, 6).Value = TxtID.Text
                    .Parameters.Add("@pid", SqlDbType.NVarChar, 6).Value = DgvPackage.Rows(i).Cells(0).Value.ToString.Trim
                    .Parameters.Add("@cou", SqlDbType.Int).Value = CInt(DgvPackage.Rows(i).Cells(2).Value)

                    .ExecuteNonQuery() [img][/img]

                End With
            Next
            'TxtNote.Text = DgvPackage.Rows(0).Cells(0).Value
            MessageBox.Show("บันทึกข้อมูลเรียบร้อยแล้วค่ะ") For i As Integer = 0 To DgvPackage.Rows.Count - 1




Tag : Ms SQL Server 2008, VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-01-10 12:41:55 By : nuusom^^ View : 1139 Reply : 7
 

 

No. 1

Guest


รูปerror






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 12:44:24 By : nuusom^^
 


 

No. 2



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



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


บันทึกค่า 2 เรคคอร์ดไปแล้วแต่ยังเข้าไปทำ For ของ Gridview ต่อ
จึงทำให้ไม่ทราบค่าของ gridview ใน cell นั้น ๆ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 15:00:43 By : grostdash
 

 

No. 3



โพสกระทู้ ( 1,341 )
บทความ ( 1 )



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


การเขียนโค้ด Loop เพื่อทำงานกับข้อมูลลักษณะนี้
ไม่นิยม Loop ด้วย DataGridView โดยตรง
เพราะบางครั้ง DataGridView จะมีแถวสุดท้ายที่เป็นแถวว่างๆ เพื่อรับข้อมูลใหม่ และมันก็ทำให้เกิดข้อผิดพลาดกับกรณีของคุณ

โดยปกติ เราต้องกำหนดว่า DataSource ของ DataGridView คืออะไร
เป็น BindingSource หรือ DataTable

ถ้าเป็น BindingSource เราก็ Loop ประมาณนี้
Code (VB.NET)
Dim bs as BindingSource = DgvPackage.DataSource
For n as Integer = 0 To bs.List.Count-1
   Dim drv As DataRowView = bs.List(n)
   ...
   Dim cm1 As New SqlCommand 
   ...
   ' Field1 ชื่อฟิล์ด ไม่ใช่ชื่อ Column ของ DataGridView ตรงนี้เป็นข้อดี เพราะเราไม่ต้องสนใจว่า ฟิล์ดนี้จะอยู่ Column ไหน และมีชื่อว่าอะไร
   cm1.Parameters.Add("@cou", SqlDbType.Int).Value = drv("Field1")         ...
Next


ถ้า DataSource ของ DataGridView เป็น DataTable
ก็ลองหาวิธีล่ะกัน ก็ไม่ยาก


ประวัติการแก้ไข
2012-01-10 15:21:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 15:19:46 By : watcharop
 


 

No. 4

Guest


กระจ่างมากค่ะเข้าใจมากขอบคุณ BieR และคุณ หางอึ่ง มากค่ะ แต่อยากให้ช่วยอีกนิดนุงค่ะพอดี

ถ้า DataSource ของ DataGridView เป็น DataTable >>>>> ขอโค้ดตัวอย่างหน่อยนะคะ<<<<<
เพื่ออนาคตเด็กไทยอิอิขอบคุณค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 15:41:16 By : nuusom^^
 


 

No. 5

Guest


ตอบความคิดเห็นที่ : 3 เขียนโดย : watcharop เมื่อวันที่ 2012-01-10 15:19:46
รายละเอียดของการตอบ ::
DataSource ของ DataGridView เป็น DataTable ค่ะ >>>>> ขอโค้ดตัวอย่างหน่อยนะคะ<<<<<
เพื่ออนาคตเด็กไทยอิอิขอบคุณค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 15:45:00 By : nuusom^^
 


 

No. 6



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



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


มีแต่ C# นะครับ

Code (C#)
for (int i = 0; i <= dtAll.Rows.Count - 1; i++)
        {
            if (dtAll.Rows[i][3] != null)
            {
                dtAll.Rows[i]["DateShow"] = returnTimeShow(dtAll.Rows[i]["DateShow"]);
                dtAll.Rows[i]["Name"] = "คุณ " + dtAll.Rows[i]["Name"];
            }
        }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 16:01:27 By : grostdash
 


 

No. 7

Guest


ตอบความคิดเห็นที่ : 6 เขียนโดย : grostdash เมื่อวันที่ 2012-01-10 16:01:27
รายละเอียดของการตอบ ::
ได้ไอเดียเลยค่ะเช็คค่าว่างก่อน >>> ก่อนที่โปรแกรมเช็คเองแล้วเจอค่าว่าที่เป็นต้นเหตุของการ error
ขอบคุณมากๆๆค่ะพี่ใจดีจิงๆเลยยยยยขอบคุณอีกครั้งค่ะ^^


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-10 16:27:46 By : nuusom^^
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ช่วยหน่อยนะคะ update แบบวน loop พอกดบันทึกค่าใน database เปลี่ยนตามที่ต้องการค่ะแต่มันerror มีภาพประกอบค่ะ T^T
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

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