想做一個簡單的商城,照著一本漏洞頗多的破書,問題太多,做到這一步實在解決不了了,問下大家
public DataTable ExactOrderSearch(int IntOrderID,int IntNF,string strName,int IntIsConfirm,int IntIsSend,int IntIsEnd)
{
//呼叫DBClass類的GetCommandProc方法執行存盤程序,回傳Sqlcommand物件
SqlCommand myCmd = dbObj.GetCommandProc("Proc_SearchOI");
//添加引數--訂單號
SqlParameter orderID = new SqlParameter("@OrderID", SqlDbType.Int, 4);
orderID.Value = IntOrderID;
myCmd.Parameters.Add(orderID);
//添加引數--標志是否填寫識訓人姓名
SqlParameter nf = new SqlParameter("@NF", SqlDbType.Int, 4);
nf.Value = IntNF;
myCmd.Parameters.Add(nf);
//添加引數--識訓人姓名
SqlParameter name = new SqlParameter("@Name", SqlDbType.VarChar, 50);
name.Value = strName;
myCmd.Parameters.Add(name);
//添加引數--是否確認
SqlParameter confirm = new SqlParameter("@IsConfirm", SqlDbType.Int, 4);
confirm.Value = IntIsConfirm;
myCmd.Parameters.Add(confirm); ;
//添加引數--是否發貨
SqlParameter send = new SqlParameter("@IsSend", SqlDbType.Int, 4);
send.Value = IntIsSend;
myCmd.Parameters.Add(send);
//添加引數--是否歸檔
SqlParameter end = new SqlParameter("@IsEnd", SqlDbType.Int, 4);
end.Value = IntIsEnd;
myCmd.Parameters.Add(end);
//呼叫DBClass類的GetDataSet方法填充查詢的SQL陳述句,回傳資料集的表的集合
DataTable dsTable = dbObj.GetDataSet(myCmd, "tbOI");
return dsTable;
}
那么存盤程序該怎么寫呢,需不需要if exsits什么的,之所以看不到是因為表中根本沒有NF這個列啊,而且識訓人也不是
直接命名為Name,表中是ReceiverName,我是要按照表中改過來還是按代碼來不改?
uj5u.com熱心網友回復:
也沒說有Name或者NF這樣的列啊,只是有這樣的引數而已。也許代碼里寫的是ReceiverName=@Name這樣的呢
你得去看看存盤程序的代碼是什么樣子的
uj5u.com熱心網友回復:
空有幾個引數,寫不出來的,都不知道邏輯uj5u.com熱心網友回復:
好久不見
uj5u.com熱心網友回復:
這些都是引數,不是列名不用改
你直接運行,看有沒有報錯
uj5u.com熱心網友回復:
咦,難道你是
uj5u.com熱心網友回復:
對存盤程序不了解,既然參考了那么@的不就是列名嗎后面跟的還有資料型別呢跟資料列是對應的啊
uj5u.com熱心網友回復:
@var是變數名,不是列名,可以相同也可以不相同的uj5u.com熱心網友回復:
那么SqlParameter nf = new SqlParameter("@NF", SqlDbType.Int, 4);里的NF是變數,定義后實在web頁面需要用的么?我沒做到后面還不知道
uj5u.com熱心網友回復:
你這個應該是一個查詢陳述句吧,去找一個回傳資料集合的程序的demo,然后自己改一下就好了,很簡單的,之前寫過,現在忘了uj5u.com熱心網友回復:
這里已經給引數賦值了,函式回傳的是DataTable,不再需要對變數再處理。
做一遍就知道了
//添加引數--標志是否填寫識訓人姓名
SqlParameter nf = new SqlParameter("@NF", SqlDbType.Int, 4);
nf.Value = IntNF;
myCmd.Parameters.Add(nf);
uj5u.com熱心網友回復:
你貼的代碼,也就能知道一個存盤程序的名稱和幾個引數,應該只有輸入引數,沒有輸出引數。大致如下:IF OBJECT_ID('Proc_SearchOI') IS NOT NULL
DROP PROC Proc_SearchOI
GO
CREATE PROC Proc_SearchOI
(
@OrderID INT,
@NF INT,
@Name VARCHAR(50),
@IsConfirm INT,
@IsSend INT,
@IsEnd INT
)
AS
BEGIN
--存盤程序具體代碼
END
GO具體的存盤程序,還是根據你這里要實作的業務邏輯去寫吧。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/48034.html
標籤:ASP.NET
上一篇:VB.NET服務程式怎么判斷檔案夾內子檔案夾里檔案的變化?
下一篇:asp.net圖片輸出或列印?
