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 > ขอสอบถามเรื่องการ Insert Stored Procedure Transaction ด้วย vb.net หน่อยครับ



 

ขอสอบถามเรื่องการ Insert Stored Procedure Transaction ด้วย vb.net หน่อยครับ

 



Topic : 130522



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



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




ผมลอง Debug ดูมันแจ้ง Error แบบนี้อ่ะครับ รบกวนชี้แนะหน่อย พอดีกำลังจะเริ่มหัดเขียน procedure อะครับ
Exception thrown: 'System.InvalidOperationException' in System.Data.dll ("ExecuteNonQuery requires the command to have a transaction when the connection assigned to the command is in a pending local transaction. The Transaction property of the command has not been initialized.")

Code (SQL)
alter procedure P_Emp 
  @Emp_User as Nvarchar(50), @Emp_Pass as Nvarchar (20)
, @Emp_Name as nvarchar (100), @Emp_Surname as nvarchar (100)
, @Emp_Phone as nvarchar (12), @Emp_Email as nvarchar (50)
, @Emp_Address as Nvarchar (300), @Emp_PostCode as nvarchar (10)
, @pStatus as int output , @pMsg as nvarchar (100) output
, @Emp_ID as int, @Role_ID as int, @P_ID as int
, @Dept_ID as int, @PROVINCE_ID as int, @DisTrict_ID as int, @Amphur_ID as int
, @M_DateRegis as datetime
, @Action as nvarchar (10)
as 
begin
			if @Action = 'Insert'
			begin 
			begin transaction 
			begin try
			
			insert into tb_Emp Values (@Emp_ID,@Emp_User, @Emp_Pass, @Emp_Name, @Emp_Surname, @Emp_Phone, @Emp_Email, @Emp_Address, @Emp_PostCode)
		    insert into tb_Emp Values (@Emp_ID,@Role_ID, @P_ID, @Dept_ID, @PROVINCE_ID, @DisTrict_ID, @Amphur_ID, @M_DateRegis)
			
			set @pStatus = 1 
			set @pMsg = 'Insert Data Successfuly'
			commit
			end try
			begin Catch
			rollback
			select @pStatus = 0
			select @pMsg = ERROR_MESSAGE();
			End Catch
	end
end


Code (VB.NET)
  Private Sub btnSubmit_Click(sender As Object, e As EventArgs) Handles btnSubmit.Click
        Try
            Using objConn As New SqlConnection(strConn)
                objConn.Open()
                Using objtransaction As SqlTransaction = objConn.BeginTransaction(IsolationLevel.ReadCommitted)
                    Using objcmd As New SqlCommand("P_Emp", objConn)
                        With objcmd
                            .CommandType = CommandType.StoredProcedure
                            .Transaction = trans
                            .Parameters.AddWithValue("@Action", "Insert")
                            .Parameters.AddWithValue("@Emp_ID", SqlDbType.NVarChar).Value = lblAutoId.Text
                            .Parameters.AddWithValue("@Emp_User", SqlDbType.NVarChar).Value = txtUser.Text
                            .Parameters.AddWithValue("@Emp_Pass", SqlDbType.NVarChar).Value = txtPass.Text
                            .Parameters.AddWithValue(" @Emp_Name", SqlDbType.NVarChar).Value = txtFirstname.Text
                            .Parameters.AddWithValue("@Emp_Surname", SqlDbType.NVarChar).Value = txtSurname.Text
                            .Parameters.AddWithValue(" @Emp_Phone", SqlDbType.NVarChar).Value = txtPhone.Text
                            .Parameters.AddWithValue("@Emp_Email", SqlDbType.NVarChar).Value = txtEmail.Text
                            .Parameters.AddWithValue("@Emp_Address", SqlDbType.NVarChar).Value = txtAddress.Text
                            .Parameters.AddWithValue(" @Emp_PostCode", SqlDbType.NVarChar).Value = txtPostcode.Text
                            .Parameters.AddWithValue("@Emp_ID", SqlDbType.Int).Value = lblAutoId.Text
                            .Parameters.AddWithValue("@Role_ID", SqlDbType.Int).Value = ddlRole.SelectedValue.ToString
                            .Parameters.AddWithValue("@P_ID", SqlDbType.Int).Value = ddlPosition.SelectedValue.ToString
                            .Parameters.AddWithValue("@Dept_ID", SqlDbType.Int).Value = ddlDept.SelectedValue.ToString
                            .Parameters.AddWithValue("@PROVINCE_ID", SqlDbType.Int).Value = ddlProvince.SelectedValue.ToString
                            .Parameters.AddWithValue("@DisTrict_ID", SqlDbType.Int).Value = ddlDistrict.SelectedValue.ToString
                            .Parameters.AddWithValue("@Amphur_ID", SqlDbType.Int).Value = ddlAumphur.SelectedValue.ToString
                            .Parameters.AddWithValue("@M_DateRegis", SqlDbType.DateTime).Value = DateTime.Now.ToString(CultureInfo.CreateSpecificCulture("en-US"))
                            .CommandText = "P_Emp"
                            .ExecuteNonQuery()
                        End With

                    End Using
                    gentAutoId()
                End Using
            End Using
        Catch ex As Exception

        End Try
    End Sub




Tag : .NET, Ms SQL Server 2014, Web (ASP.NET), Win (Windows App), VB.NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2018-03-10 08:17:15 By : adminliver View : 701 Reply : 1
 

 

No. 1



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



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


ทำได้แล้วครับเอา
.CommandText = "P_Emp"
.Transaction = trans ออก






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2018-03-11 22:36:29 By : adminliver
 

   

ค้นหาข้อมูล


   
 

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