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,037

HOME > .NET Framework > Forum > รบกวนพี่ทีมงานด้วยครับ C# + mysql 5 +odbc 3.51 window application update ข้อมูลไม่ได้ครับ



 

รบกวนพี่ทีมงานด้วยครับ C# + mysql 5 +odbc 3.51 window application update ข้อมูลไม่ได้ครับ

 



Topic : 051459



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

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

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




คลิกเลือกข้อมูลที่จะแก้ไขใน datagrid แล้วแสดงข้อมูลใน textbox ครับแล้วจึงแก้ไขแต่เวลาเรากดปุ่มแก้ไขเพื่อให้บันทึกข้อมูล
มันฟ้องเวลากดปุ่มแก้ไขข้อมูล ว่ารหัสที่ป้อนไม่ถูกต้องครับ ทั้งที่เป็นการ update ไม่ใช่เพิ่มข้อมูลใหม่ แต่ถ้าเป็นการเพิ่มข้อมูลสามารถทำได้ปกติครับ
Code (C#)
private void tseditTaxs_Click(object sender, EventArgs e)
        {
            if (txtCompcode.Text.Trim() == "")
            {
                MessageBox.Show("คุณยังไม่ได้เลือกข้อมูล ! กรุณาเลือกข้อมูลที่ต้องการแก้ไข", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtCompcode.Focus();
                return;
            }
            if (txtCompname.Text.Trim() == "")
            {
                MessageBox.Show("กรุณาป้อนเลขประจำ", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtComptaxno.Focus();
                return;
            }
            if (txtCompname.Text.Trim() == "")
            {
                MessageBox.Show("กรุณาป้อนชื่อ", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtCompname.Focus();
                return;
            }
            if (txtCompaddr.Text.Trim() == "")
            {
                MessageBox.Show("กรุณาป้อนที่อยู่", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtCompaddr.Focus();
                return;
            }
            if (txtComptelephon.Text.Trim() == "")
            {
                MessageBox.Show("กรุณาป้อนเบอร์โทรศัพท์", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                txtComptelephon.Focus();
                return;
            }
            if (MessageBox.Show("คุณต้องการแก้ไขข้อมูล ใช่หรือไม่?", "ยืนยันข้อมูล", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
            {
                tr = Conn.BeginTransaction();

                try
                {
                    sb = new StringBuilder();
                    sb.Remove(0, sb.Length);
                    sb.Append("update company");
                    sb.Append(" set CompName=?,");
                    sb.Append(" CompAddr=?,");
                    sb.Append(" CompTel=?,");
                    sb.Append(" CompFax=?,");
                    sb.Append(" CompTaxno=?");
                    sb.Append(" where (CompID=?)");

                    string sqlEdit;
                    sqlEdit = sb.ToString();
                   
                    com.CommandText = sqlEdit;
                    com.CommandType = CommandType.Text;
                    com.Connection = Conn;
                    com.Transaction = tr;
                    com.Parameters.Clear();

                    com.Parameters.Add("@CompID",OdbcType.VarChar).Value = txtCompcode.Text.Trim();
                    com.Parameters.Add("@CompName",OdbcType.VarChar).Value = txtCompname.Text.Trim();
                    com.Parameters.Add("@CompAddr",OdbcType.VarChar).Value = txtCompaddr.Text.Trim();
                    com.Parameters.Add("@CompTel",OdbcType.VarChar).Value = txtComptelephon.Text.Trim();
                    com.Parameters.Add("@CompFax",OdbcType.VarChar).Value = txtCompfax.Text.Trim();
                    com.Parameters.Add("@CompTaxno",OdbcType.VarChar).Value = txtComptaxno.Text.Trim();
                    
                    int result;
                    result = com.ExecuteNonQuery();
                        
                    if (result == 0)
                    {
                      tr.Rollback();
                     MessageBox.Show("รหัสที่คุณป้อน ไม่ถูกต้อง !", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                      txtCompcode.Focus();
                    }
                   else
                    {
                       com.ExecuteNonQuery();
                       tr.Commit();
                       MessageBox.Show("คุณแก้ไขข้อมูลเรียบร้อยแล้ว", "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information);
                         ClearAllData();
                         ShowData();
                         FormatdgvComplist();
                    }
              }
                catch (Exception ex)
                {
                    tr.Rollback();
                    MessageBox.Show("เกิดข้อผิดพลาด เนื่องจาก" + ex.Message, "ผลการทำงาน", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            txtCompcode.Focus();
        }




Tag : .NET, MySQL, C#, VS 2008 (.NET 3.x)







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-11-10 13:12:00 By : woraponc View : 1281 Reply : 5
 

 

No. 1



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

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

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

การ Debug ตรวจสอบค่าน่าจะช่วยได้เยอะน่ะครับ


Go to : ASP.NET MySql.Data.MySqlClient - Parameter Query (MySqlParameter)






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-11-10 15:24:17 By : webmaster
 


 

No. 2



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

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

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


ทำได้แล้วครับ Code (C#)
                    sb=new StringBuilder ();
                    sb.Remove(0,sb.Length);
                    sb.Append("UPDATE tax");
                    sb.Append(" SET CompID='"+txtCompId.Text+"',");
                    sb.Append(" CompName='"+txtCompname.Text+"',");
                    

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-11-11 16:43:38 By : woraponc
 

 

No. 3



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

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

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

อ้าว สุดท้ายไม่ใช้ Parameter แล้ว
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-11-11 16:49:27 By : webmaster
 


 

No. 4



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

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

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


แต่ตอนนี้มีปัญหาใหญ่กว่าครับคือ

เก็บข้อมูล checkbox ลงฐานข้อมูลคือ มี check box8 อัน แยกเก็บอันละ feild ข้อมูล คือ Checkbox1 = B1 B1 คือชื่อ field
การเพิ่มข้อมูลแต่ละครั้ง เราจะเลือกเพียง 1 checkbox และเก็บข้อมูลจาก checkbox ที่ถูกเลือก ลง ฐานข้อมูล เป็นค่า 1
ถ้าเช็คบ็อกอันไหนไม่ถูกเลือกให้เก็บค่าว่างเป็น DBnull.values;
ปัญหาคือตอนเพิ่มข้อมูลสามารถทำได้ตามต้องการครับ มีปัญหาแต่ตอนแก้ไข สมมุติว่าตอนเพิ่มข้อมูลเราเลือก checkbox ตัวที่ 1
แต่ถ้าตอนแก้ไขโดยต้องการ เปลียนจาก checkbox 1 มาเป็น checkbox 2 แล้ว update ลงฐานข้อมูล ที่ฐานข้อมูลมันจะถูกเก็บเป็นค่าTrue กับ false ครับ มันไม่เป็น 1 กับ DBnull เหมือนตอนเพิ่มข้อมูลครับ
Code (C#)
                    sb.Append(" B1='" +chkB1.Checked+ "',");
                    sb.Append(" B2='" +chkB2.Checked+ "',");
                    sb.Append(" B3='" +chkB3.Checked+ "',");
                    sb.Append(" B4='" +chkB4.Checked+ "',");
                    sb.Append(" B5='" +chkB5.Checked+ "',");
                    sb.Append(" B6='" +chkB6.Checked+ "',");
                    sb.Append(" B7='" +chkB7.Checked+ "',");
                    sb.Append(" B8='" +chkB8.Checked+ "'");
                    sb.Append(" WHERE (DocNum='"+txtDocno.Text+"')");

                    string sqlEdit;
                    sqlEdit = sb.ToString();

                    com.CommandText = sqlEdit;
                    com.CommandType = CommandType.Text;
                    com.Connection = Conn;
                    com.Transaction = tr;
                    com.Parameters.Clear();
if (chkB1.Checked == true)
                    {
                        com.Parameters.Add("?B1", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB1.Checked == false)
                    {
                        com.Parameters.Add("?B1", OdbcType.VarChar).Value = DBNull.Value;              
                     }
                    if (chkB2.Checked == true)
                    {
                        com.Parameters.Add("?B2", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB2.Checked == false)
                    {
                        com.Parameters.Add("?B2", OdbcType.VarChar).Value = DBNull.Value;
                    }
                    if (chkB3.Checked == true)
                    {
                        com.Parameters.Add("?B3", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB3.Checked == false)
                    {
                        com.Parameters.Add("?B3", OdbcType.VarChar).Value = DBNull.Value;
                    }
                    if (chkB4.Checked == true)
                    {
                        com.Parameters.Add("?B4", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB4.Checked == false)
                    {
                        com.Parameters.Add("?B4", OdbcType.VarChar).Value = DBNull.Value;
                    }
                    if (chkB5.Checked == true)
                    {
                        com.Parameters.Add("?B5", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB5.Checked == false)
                    {
                        com.Parameters.Add("?B5", OdbcType.VarChar).Value =DBNull.Value;
                    }
                    if (chkB6.Checked == true)
                    {
                        com.Parameters.Add("?B6", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB6.Checked == false)
                    {
                        com.Parameters.Add("?B6", OdbcType.VarChar).Value =DBNull.Value;
                    }
                    if (chkB7.Checked == true)
                    {
                        com.Parameters.Add("?B7", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB7.Checked == false)
                    {
                        com.Parameters.Add("?B7", OdbcType.VarChar).Value =DBNull.Value;
                    }
                    if (chkB8.Checked == true)
                    {
                        com.Parameters.Add("?B8", OdbcType.VarChar).Value = "1";
                    }
                    if (chkB8.Checked == false)
                    {
                        com.Parameters.Add("?B8", OdbcType.VarChar).Value =DBNull.Value;
                    }
                    int result;
                    result = com.ExecuteNonQuery();

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-11-11 16:59:19 By : woraponc
 


 

No. 5



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

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

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


ไม่มีใครมาช่วยเลย ว้า แย่จัง
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-11-17 16:27:42 By : woraponc
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : รบกวนพี่ทีมงานด้วยครับ C# + mysql 5 +odbc 3.51 window application update ข้อมูลไม่ได้ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่