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

HOME > .NET Framework > Forum > ไม่สามารถกดบันทึกข้อมูลได้หลังจากBuildProgramฐานข้อมูลAccess



 

ไม่สามารถกดบันทึกข้อมูลได้หลังจากBuildProgramฐานข้อมูลAccess

 



Topic : 133303



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



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




error into

คือผมเรียกดูได้ ไม่แต่สามารถ กดบันทึกได้ครับ

ลองกำหนดสิทธิ์ ตรง file access ที่เป็น ฐานข้อมูลแล้วก็ยัง error เหมือนเดิมครับ

errorsaveindata



Tag : .NET, Ms Access, C#, VS 2010 (.NET 4.x)









ประวัติการแก้ไข
2019-03-14 13:42:34
2019-03-14 14:16:22
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2019-03-14 13:41:25 By : ronagon1 View : 1057 Reply : 7
 

 

No. 1



โพสกระทู้ ( 4,436 )
บทความ ( 23 )



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

ขอดู Error ทั้งหมด และ โค้ด ตรงส่วนที่มัน Error หน่อยครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 15:00:39 By : lamaka.tor
 


 

No. 2



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



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


See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.Data.OleDb.OleDbException (0x80004005): การดำเนินการต้องใช้แบบสอบถามที่สามารถปรับปรุงได้
at System.Data.OleDb.OleDbCommand.ExecuteCommandTextErrorHandling(OleDbHResult hr)
at System.Data.OleDb.OleDbCommand.ExecuteCommandTextForSingleResult(tagDBPARAMS dbParams, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommandText(Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteCommand(CommandBehavior behavior, Object& executeResult)
at System.Data.OleDb.OleDbCommand.ExecuteReaderInternal(CommandBehavior behavior, String method)
at System.Data.OleDb.OleDbCommand.ExecuteNonQuery()
at ShoeSystem.Calculate.button2_Click(Object sender, EventArgs e) in C:\Users\nueng_000\Desktop\TkSystem\ShoeSystem\Calculate.cs:line 818
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.34003 built by: FX45W81RTMGDR
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
ShoeSystem
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Default%20Company%20Name/ManufacturyTKBlock/ShoeSystem.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.34003 built by: FX45W81RTMGDR
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Transactions
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Transactions/v4.0_4.0.0.0__b77a5c561934e089/System.Transactions.dll
----------------------------------------
System.EnterpriseServices
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.EnterpriseServices.dll
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.33440 built by: FX45W81RTMREL
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

สามารถเปิดดูได้ และก็ดึงข้อมูลมาใช้งานได้ แต่ไม่สามารถกดบันทึกและแก้ไขUpdate ได้

errorupdate

คือโคดในโปรเจคไม่มี error อะครับ แต่พอ build มาเป็นโปรแกรมแล้ว ใช้ได้ปกติ แต่ไม่สามารถ แก้ไข บันทึกข้อมูล ลงไปใน database ที่เป็น access ได้


ประวัติการแก้ไข
2019-03-14 15:09:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 15:06:36 By : ronagon1
 

 

No. 3



โพสกระทู้ ( 4,436 )
บทความ ( 23 )



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

ที่ไม่ Error เพราะ ปิด try มัน หรือปล่าวครับ

ถ้ามี try ลองเอาออกก่อน
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 15:39:18 By : lamaka.tor
 


 

No. 4



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



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


อันนี้ Code ตรงส่วน Update ครับ

Update


Code ส่วน Save ครับ

save

อันนี้หลังจากกด Update ตอนBuildเป็นโปรแกรมสำเร็จแล้วเกิดError แต่ตอน Update Save Del ได้ปกติตอนยังไม่ได้ Buildเป็นโปรเจคสำเร็จรูปพอทำเป็นตัว insall แล้ว มันทำได้แค่ดูกับเรียกใช้ ไม่สามารถบันทึกแก้ไข ได้เลยครับ

updateinprogram

ีรบกวนด้วยคับ


ประวัติการแก้ไข
2019-03-14 16:59:49
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 16:45:55 By : ronagon1
 


 

No. 5



โพสกระทู้ ( 4,436 )
บทความ ( 23 )



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

zsdf

ข้อความนี้ อยู่ตรงส่วนไหน หรือ อยู่หน้าไหน ของโค้ด ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 16:59:12 By : lamaka.tor
 


 

No. 6



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



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


ไม่มีนะครับ ผมแค่กดแก้ไขที่ปุ่มตอนที่โปรแกรมเป็นโปรแกรมสำเร็จรูปแล้วมันเกิดError แต่ตอนรันปกติยังไม่ Buildโปรเจค ไม่เกิด error อะไร ใช้งานได้ปกติ สามารถ บันทึก แก้ไข ลบ ได้ปกติ แต่พอทำการ Buildเป็นFile และลงที่เครื่องถึงเกิดการError


Code (C#)
public partial class FixMaterail : Form
    {
        private project_shirtDataSet dsEx = new project_shirtDataSet();
        private DataTable dataTable;
        private string Sql = "";

        public FixMaterail()
        {
            InitializeComponent();
        }

        private void FixMaterail_Load(object sender, EventArgs e)
        {
            ClassConnection.connectionDatabase();
            ShowData();
            EnabledFalse();
            buttonDelete.Enabled = true;
            buttonSave.Enabled = false;
            buttonCancel.Enabled = false;
        }

        private void FormatDataGridView()
        {
            dataGridView1.Columns[0].HeaderText = "ID";
            dataGridView1.Columns[1].HeaderText = "ชื่อสินค้า";
            dataGridView1.Columns[2].HeaderText = "สี";
            dataGridView1.Columns[3].HeaderText = "จำนวนที่นับได้";
            dataGridView1.Columns[4].HeaderText = "จำนวนที่คำนวณ";
            dataGridView1.Columns[5].HeaderText = "จำนวนที่เสียหาย";
            dataGridView1.Columns[6].HeaderText = "เครื่องที่ผลิต";
            dataGridView1.Columns[7].HeaderText = "วันที่ผลิต";
            dataGridView1.Columns[8].HeaderText = "ต้นทุนต่อก้อน";

            dataGridView1.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[4].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[5].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[6].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[7].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
            dataGridView1.Columns[6].DefaultCellStyle.Format = "dd/MM/yyyy";

            dataGridView1.Columns[0].Visible = false;
            dataGridView1.Columns[3].Visible = false;
            dataGridView1.Columns[4].Visible = false;
            dataGridView1.Columns[5].Visible = false;
            dataGridView1.Columns[8].Visible = false;
        }

        private void buttonEdit_Click(object sender, EventArgs e)
        {
            ClassConnection.count = 2;
            buttonEdit.Enabled = false;
            buttonDelete.Enabled = false;
            buttonCancel.Enabled = true;
            buttonSave.Enabled = true;
            txt1.Enabled = false;
            EnabledTrue();
        }
 
        private void buttonDelete_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("ต้องการลบข้อมูลจริงหรือไม่", "ยืนยันการลบ");
            if (result == DialogResult.Cancel)
            {
                return;
            }
            OleDbTransaction tr = ClassConnection.connection.BeginTransaction();
            try
            {
                ClassConnection.connectionDatabase();
                string Sql = @"DELETE FROM Materail WHERE ID = @id";
                ClassConnection.command = new OleDbCommand(Sql, ClassConnection.connection);
                ClassConnection.command.Parameters.AddWithValue("id", txt1.Text);
                int r = (int)ClassConnection.command.ExecuteNonQuery();
                if (r == -1)
                {
                    MessageBox.Show("เกิดข้อผิดพลาด ไม่สามารถลบข้อมูลได้", "ตรวจสอบ");
                    tr.Rollback();
                }
                else
                {
                    MessageBox.Show("ลบข้อมูลแล้ว", "ตรวจสอบ");
                    tr.Commit();
                    ClearData();
                    ShowData();
                }
            }
            catch
            {
                tr.Rollback();
            }
            finally
            {
                ClassConnection.connectionDatabase();
                tr.Dispose();
            }
        }

        private void buttonCancel_Click(object sender, EventArgs e)
        {
            ClassConnection.connectionDatabase();
            ClearData();
            ShowData();
            EnabledFalse();
            buttonEdit.Enabled = true;
            buttonDelete.Enabled = false;
            buttonCancel.Enabled = false;
        }

        private void ShowData()
        {
            ClassConnection.connectionDatabase();

            Sql = @"SELECT * FROM Materail";

            ClassConnection.command = new OleDbCommand(Sql, ClassConnection.connection);
            OleDbDataReader DataReader = ClassConnection.command.ExecuteReader();

            if (DataReader.HasRows)
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }
            else
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }
        }

        private void EnabledTrue()
        {
            txt2.Enabled = true;
            txt3.Enabled = true;
            txt4.Enabled = true;
            txt5.Enabled = true;
        }

        private void EnabledFalse()
        {
            txt1.Enabled = false;
            txt2.Enabled = false;
            txt3.Enabled = false;
            txt4.Enabled = false;
            txt5.Enabled = false;
        }

        private void ClearData()
        {
            txt1.Text = "";
            txt2.Text = "";
            txt3.Text = "";
            txt4.Text = "";
            txt5.Text = "";
        }

        private void SearchData()
        {
            ClassConnection.connectionDatabase();

            Sql = @"SELECT * FROM Materail WHERE Materail.ID AND Materail.วันที่ผลิต BETWEEN #" + dateTimePicker1.Value.AddYears(-543).ToString("M/d/yyyy") + "# And #" + dateTimePicker2.Value.AddYears(-543).ToString("M/d/yyyy") + "#";

            ClassConnection.command = new OleDbCommand(Sql, ClassConnection.connection);
            OleDbDataReader DataReader = ClassConnection.command.ExecuteReader();

            if (DataReader.HasRows)
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }
            else
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }

        }

        private void SearchDataAll()
        {

            ClassConnection.connectionDatabase();

            Sql = @"SELECT * FROM Materail";

            ClassConnection.command = new OleDbCommand(Sql, ClassConnection.connection);
            OleDbDataReader DataReader = ClassConnection.command.ExecuteReader();

            if (DataReader.HasRows)
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }
            else
            {
                dataTable = new DataTable();
                dataTable.Load(DataReader);
                dataGridView1.DataSource = dataTable;
                FormatDataGridView();
                DataReader.Close();
            }


        }

        private void button2_Click(object sender, EventArgs e)
        {
            SearchDataAll();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            SearchData();
        }

        private void buttonSave_Click_1(object sender, EventArgs e)
        {
            if (ClassConnection.count == 2)
            {
                OleDbTransaction tr = ClassConnection.connection.BeginTransaction();
                {
                    ClassConnection.connectionDatabase();
                    string SqlUpdate = @"UPDATE Materail SET ชื่อสินค้า = @b,สี =@c,เครื่องที่ผลิต =@d,วันที่ผลิต =@e WHERE ID = @id";
                    ClassConnection.command = new OleDbCommand(SqlUpdate, ClassConnection.connection);
                    ClassConnection.command.Parameters.AddWithValue("b", txt2.Text);
                    ClassConnection.command.Parameters.AddWithValue("c", txt3.Text);
                    ClassConnection.command.Parameters.AddWithValue("d", txt4.Text);
                    ClassConnection.command.Parameters.AddWithValue("e", txt5.Text);
                    ClassConnection.command.Parameters.AddWithValue("id", txt1.Text);
                    int result = ClassConnection.command.ExecuteNonQuery();
                    if (result == -1)
                    {
                        MessageBox.Show("เกิดข้อผิดพลาด ไม่สามารถแก้ไขข้อมูลได้", "ตรวจสอบ");
                        tr.Rollback();
                    }
                    else
                    {
                        MessageBox.Show("แก้ไขข้อมูลแล้ว", "ตรวจสอบ");
                        tr.Commit();
                    }
                }

            }
            buttonSave.Enabled = false;
            buttonCancel.Enabled = false;
            buttonEdit.Enabled = true;
            buttonDelete.Enabled = true;
            ClearData();
            ShowData();
            ClassConnection.count = 0;
            EnabledFalse();
        }


        private void dataGridView1_CellMouseClick_1(object sender, DataGridViewCellMouseEventArgs e)
        {

            if (e.RowIndex == -1)return;
            txt1.Text = dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString();
            txt2.Text = dataGridView1.Rows[e.RowIndex].Cells[1].Value.ToString();
            txt3.Text = dataGridView1.Rows[e.RowIndex].Cells[2].Value.ToString();
            txt4.Text = dataGridView1.Rows[e.RowIndex].Cells[6].Value.ToString();
            txt5.Text = ((DateTime)dataGridView1[7, e.RowIndex].Value).ToString("dd/MM/yyyy");
            
        }


    }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 17:08:50 By : ronagon1
 


 

No. 7



โพสกระทู้ ( 4,436 )
บทความ ( 23 )



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

ถ้าเปลี่ยนสิทธิ์แล้วยังไม่ได้ ลองแก้ตามนี้ดูครับ

https://support.microsoft.com/th-th/help/175168/asp-returns-operation-must-use-an-updateable-query-error
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2019-03-14 17:33:28 By : lamaka.tor
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ไม่สามารถกดบันทึกข้อมูลได้หลังจากBuildProgramฐานข้อมูลAccess
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 04
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 อัตราราคา คลิกที่นี่