第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在C#中使用存儲過程輸出參數(shù)

在C#中使用存儲過程輸出參數(shù)

翻過高山走不出你 2019-08-13 14:43:16
在C#中使用存儲過程輸出參數(shù)我在將輸出參數(shù)從Sql Server存儲過程返回到C#變量時遇到問題。我已經(jīng)閱讀了有關(guān)此內(nèi)容的其他帖子,不僅在這里,而且在其他網(wǎng)站上,我無法讓它工作。這是我現(xiàn)在擁有的。目前我只是想打印回來的價值。以下代碼返回null值。我試圖返回的是主鍵。我嘗試過使用@@IDENTITY和SCOPE_INDENTITY()(即SET @NewId = SCOPE_IDENTITY())。存儲過程:CREATE PROCEDURE usp_InsertContract    @ContractNumber varchar(7),     @NewId int OUTPUT ASBEGIN     INSERT into [dbo].[Contracts] (ContractNumber)         VALUES (@ContractNumber)     Select @NewId = Id From [dbo].[Contracts] where ContractNumber = @ContractNumberEND打開數(shù)據(jù)庫:pvConnectionString = "Server = Desktop-PC\\SQLEXPRESS; Database = PVDatabase; User ID = sa;     PASSWORD = *******; Trusted_Connection = True;";try{     pvConnection = new SqlConnection(pvConnectionString);     pvConnection.Open();}catch (Exception e){     databaseError = true;}執(zhí)行命令:pvCommand = new SqlCommand("usp_InsertContract", pvConnection);pvCommand.Transaction = pvTransaction;pvCommand.CommandType = CommandType.StoredProcedure;    pvCommand.Parameters.Clear();pvCommand.Parameters.Add(new SqlParameter("@ContractNumber", contractNumber));SqlParameter pvNewId = new SqlParameter();pvNewId.ParameterName = "@NewId";pvNewId.DbType = DbType.Int32;pvNewId.Direction = ParameterDirection.Output;pvCommand.Parameters.Add(pvNewId);try{     sqlRows = pvCommand.ExecuteNonQuery();     if (sqlRows > 0)         Debug.Print("New Id Inserted =  ",              pvCommand.Parameters["@NewId"].Value.ToString());      }     catch (Exception e)     {         Debug.Print("Insert Exception Type: {0}", e.GetType());         Debug.Print("  Message: {0}", e.Message);     }}
查看完整描述

3 回答

?
慕的地8271018

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個贊

存儲過程.........

CREATE PROCEDURE usp_InsertContract    @ContractNumber varchar(7)ASBEGIN

    INSERT into [dbo].[Contracts] (ContractNumber)
        VALUES (@ContractNumber)

    SELECT SCOPE_IDENTITY() AS [SCOPE_IDENTITY]END

C#

pvCommand.CommandType = CommandType.StoredProcedure;pvCommand.Parameters.Clear();pvCommand.Parameters.Add(new SqlParameter("@ContractNumber", contractNumber));object uniqueId;int id;
    try
    {
    uniqueId = pvCommand.ExecuteScalar();
     id = Convert.ToInt32(uniqueId);
    }
    catch (Exception e)
    {
        Debug.Print("  Message: {0}", e.Message);
    }}

編輯: “我仍然得到一個DBNull值....對象不能從DBNull轉(zhuǎn)換為其他類型。明天我會再次接受這個。我已經(jīng)完成了另一份工作,”

我相信SQL表中的Id列不是標(biāo)識列。


查看完整回答
反對 回復(fù) 2019-08-13
  • 3 回答
  • 0 關(guān)注
  • 640 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號