gpt4 book ai didi

c# - 使用输入输出存储过程插入数据

转载 作者:行者123 更新时间:2023-11-30 22:11:50 24 4
gpt4 key购买 nike

我正在使用 ASP.net C# 创建一个 Web 应用程序。我有一个预订表格,我需要使用存储过程将数据插入到表中。该表有几列,其中第二列是计算列。存储过程设置为插入数据并在插入后从第二列获取值。下面是存储过程的代码:

    Create Procedure sp_InsertCashPooja
@FirstName varchar(100),
@LastName varchar(100),
@TelNo bigint,
@Star char(50),
@Rasi char(50),
@Gothram char(50),
@PDMID int,
@PayMode bit,
@PujaName char(50),
@DonateAmt decimal(19,2),
@RcptNo varchar(25) output

as

Begin

SET NOCOUNT ON;

BEGIN TRY

BEGIN TRANSACTION

if @PujaName != 'DONATION'
Begin

INSERT INTO PoojaDetails (FirstName, LastName, TelNo, Star, Rasi, Gothram, PoojaDietyMasterID, PayMode) values (@FirstName,@LastName,@TelNo,@Star,@Rasi,@Gothram,@PDMID,@PayMode)

End

if @PujaName = 'DONATION'
Begin

DECLARE @isDonate int = 0;

INSERT INTO PoojaDetails (FirstName, LastName, TelNo, Star, Rasi, Gothram, PoojaDietyMasterID, PayMode, isDonate, DonateAmount) values (@FirstName,@LastName,@TelNo,@Star,@Rasi,@Gothram,@PDMID,@PayMode, @isDonate, @DonateAmt)

End

Select @RcptNo = max(ReceiptNo) from PoojaDetails
Return @RcptNo
COMMIT TRANSACTION

END TRY

BEGIN CATCH
IF (@@TRANCOUNT > 0)

ROLLBACK TRANSACTION

END CATCH

SET NOCOUNT OFF;


End

我想在点击一个按钮时插入数据:我能够找出下面的代码....

 protected void btnSave_Click(object sender, EventArgs e)
{


frmFirstName = txtFirstName.Text.Trim().ToUpper();
frmLastName = txtLastName.Text.Trim().ToUpper();
frmPhoneNo = Convert.ToInt32(txtPhoneNo.Text.Trim());
frmNakshatra = Convert.ToString(cmbNakshatra.SelectedItem).Trim();
frmRasi = Convert.ToString(cmbRasi.SelectedItem).Trim();
frmGothram = Convert.ToString(cmbGothram.SelectedItem).Trim();
frmPujaName = Convert.ToString(cmbPujaName.SelectedItem).Trim();
using (SqlConnection connection = new SqlConnection())
{
if (frmPayMode == "Cash")
{
if (frmPujaName == "DONATION")
{
SqlDataAdapter CashAdapter = new SqlDataAdapter();

CashAdapter.InsertCommand = new SqlCommand("sp_InsertCashPooja", connection);
CashAdapter.InsertCommand.CommandType = CommandType.StoredProcedure;

请帮忙....我想捕获返回的 RcptNo,稍后打算调用另一个 ASPX 页面并使用查询字符串传递值。

谢谢

最佳答案

使用简单的 SqlCommand 调用您的 SP

connection.Open();
var cmd = new SqlCommand("sp_InsertCashPooja", connection);
cmd.Parameters.AddWithValue("FirstName", frmFirstName);
// Add all the others parameters in same way
var id = (int)cmd.ExecuteScalar();
connection.Close();

关于c# - 使用输入输出存储过程插入数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20051986/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com