asp調用參數存儲過程
A. asp調用存儲過程
select * from sp where xl="7" order by id desc limit 8
補充:
開始上面的那條是mysql的語句。
樓主的應該是MSSQL 或者ACCESS資料庫吧
ID是否是唯一呢。
ID和XL想必都有很多的相同的數據?
請用下面的try一下
select top 8 * from sp where xl='7' order by id,在加一個欄位進行排列 desc
or
select distinct top 8 * from sp where xl='7' order by id desc
or
select top 8 * from ( select distinct top 8 * from sp where xl='7' order by id desc)a
此時:distinct可加可不加,都try一下吧
B. asp.net 調用存儲過程
(1)執行一個沒有參數的存儲過程的代碼如下:
SqlConnection
conn=new
SqlConnection(「connectionString」);
SqlDataAdapter
da
=
new
SqlDataAdapter();
da.selectCommand
=
new
SqlCommand();
da.selectCommand.Connection
=
conn;
da.selectCommand.CommandText
=
"NameOfProcere";
da.selectCommand.CommandType
=
CommandType.StoredProcere;
(2)執行一個有參數的存儲過程的代碼如下
SqlConnection
conn=new
SqlConnection(「connectionString」);
SqlDataAdapter
da
=
new
SqlDataAdapter();
da.selectCommand
=
new
SqlCommand();
da.selectCommand.Connection
=
conn;
da.selectCommand.CommandText
=
"NameOfProcere";
da.selectCommand.CommandType
=
CommandType.StoredProcere;
param
=
new
SqlParameter("@ParameterName",
SqlDbType.DateTime);
param.Direction
=
ParameterDirection.Input;
param.Value
=
Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若需要添加輸出參數:
param
=
new
SqlParameter("@ParameterName",
SqlDbType.DateTime);
param.Direction
=
ParameterDirection.Output;
param.Value
=
Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
若要獲得參儲過程的返回值:
param
=
new
SqlParameter("@ParameterName",
SqlDbType.DateTime);
param.Direction
=
ParameterDirection.ReturnValue;
param.Value
=
Convert.ToDateTime(inputdate);
da.selectCommand.Parameters.Add(param);
C. ASP中存儲過程如何調用
/ * 存 儲 過 程 例 程 */
CREATE PROCEDURE sp_CheckPass
@CHKName VARCHAR(30),@CHKPass
VARCHAR(30),@ISValid CHAR(8) OUTPUT
AS
IF EXISTS(SELECT UserName FROM Users
WHERE UserName=@CHKName AND UserPwd=@CHKPass)
SELECT @ISVaid="pass"
ELSE
SELECT @ISValid="Invalid"
----存 儲 過 程 接 收 兩 個 輸 入 參 數, 輸 入 參 數@CHKaName 向 存 儲 過 程 傳 遞 一 個 用 戶 名,@CHKPass 向 存 儲 過 程 傳 遞 一 個 密 碼, 如 果 有 用 戶 擁 有 指 定 的 密 碼, 輸 出 參 數 將 返 回 "pass", 否 則, 返 回"Invalid"。
----現 在 我 們 可 以 在CheckPass.asp 中 調 用 存 儲 過 程sp_CheckPass 了。
CheckPass.asp
< ! - - #INCLUDE VIRTUAL=
"ADOVBS.inc" - - >
' 包 含VBSCRIPT 的 常 量 定 義 文 件
< %
Set DataConn=Sever.CreateObject
("ADODB.Connection") ' 建 立 連 接 對 象
Dataconn.Open"DSN=user;SERVER=APP_SERVER;
UID=sa;PWD=;APP=Microsoft(R) Developer Studio;
WSID=APP_SERVER;Regional=Yes"
Set cmdTemp=Sever.CreateObject
("ADODB.Command") ' 建 立 命 令 對 象
Set cmdTemp.ActiveConnection=DataConn
cmdTemp.CommandType=adCMdStoredProc
' 指 定 要 執 行 的 是 一 個 存 儲 過 程
cmdTemp.CommandText="sp_CheckPass"
' 存 儲 過 程 名 稱
Set tmpFirstParam=cmdTemp.CreateParameter
("UserName",adVarChar,adParamIntput,30)
' 創 建 輸 入 參 數 對 象
cmdTemp.Parameters.Append.tmpFirstParam
' 把 參 數 加 到 參 數 集 合
Set tmpSecondParam=cmdTemp.CreateParameter
("UserPwd",adVarChar,adParamInput,30)
cmdTemp.ParaMeters.Append tmpSecondParam
Set tmpThirdParam=cmdTemp.CreateParameter
("RetValue",adChar,adParamOutput,8)
' 創 建 返 回 參 數 對 象
cmdTemp.Parameters.Append tmpThirdParam
cmdTemp("UserName")=Request.FORM("UserName")
' 取 得 輸 入 參 數
cmdTemp("UserPwd")=Request.FORM("UserPwd")
cmdTemp.Execute ' 執 行 存 儲 過 程
% >
The Check Result is < %=cmdTemp("RetValue") % >
' 輸 出 返 回 值
< %
DataConn.Close ' 關 閉 數 據 庫 連 接
% >
// 用 戶 輸 入 界 面
< HTML >
< HEAD >< TITLE >Registration Page< /TITLE >< /HEAD >
< H2 > 請 輸 入 用 戶 名 和 密 碼:< /H2 >
< FORM METHOD="POST" ACTION="CheckPass.asp" >
< p > 用 戶 名:
< input name="UserName" type="TEXT" >
< /p >
< p > 密 碼:
< input name="UserPwd" type="PASSWORD" >
< input type="submit" name="submit" value=
" 確 定" >
< /p >
< /FORM > < /BODY >
< /HTML >
D. asp.net中調用帶輸入輸出參數的存儲過程
既然Data已經返回DataTable,那麼BLL應該對這個DataTable進一步封裝.但是根據你目前的組織架構, 還沒有完全實現三層架構.BLL很難再進一步封裝.
所以我建議你增加一個實體類.類似於
public class Views
{
public string falshUrl
{
get;
set;
}
public string nvar_title
{
}
}
然後BLL里可以
public Views pFour(int Id)
{
DataTable dt = data.pFour(Id);
Views view = new Views();
view.falshUrl = dt.Rows[0]["falshUrl"].ToString();
view.nvar_title = dt.Rows[0]["nvar_title"].ToString();
return view;
}
前台直接BLL bll = new BLL();
Views view = bll.pFour(Id);
Lable1.Text = view.falshUrl;
Lable2.Text = view.nvar_title;
E. asp.net 調用存儲過程
如果沒有報錯,那就在頁面調用的開始加個斷點,看看userid;username;departid的值是什麼。然後在資料庫里執行以下存儲過程,把三個值帶進去試一試,因為在資料庫里分析一下會比較直接。
F. ASP調用存儲過程:存儲過程有兩個參數輸入,沒有輸出
你的問題是?
需要輸出?但你這個功能沒必要需要輸出值啊,判斷成功與否,直接判斷存儲過程返回值就行了!
G. asp調用存儲過程
分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:
set Comd=sever.createobject("adodbmand")
openDB '連接資料庫
set d.activeconnection=conn'數據連接相關聯
dmandtype=adcmdstoredproc'提示調用的存儲過程
dmandtext="user"'被調用的存儲過程
set para1=d.createparameter("username",advarchar,adparaminput,15)'全部的變數設置要與存儲過程裡面的要對應
set para2=d.createparameter("password ",advarchar,adparaminput,15)
set para3=d.createparameter("realname",advarchar,adparaminput,15)
set para4=d.createparameter("gender",advarchar,adparamtinput,15)
set para5=d.createparameter("tel",advarchar,adparaminput,15)
set para6=d.createparameter("email",advarchar,adparaminput,15)
set para7=d.createparameter("homepage",advarchar,adparaminput,15)
set para8=d.createparameter("savesignup",adboolean,adparameoutput,15)'要注意的是每一個數據類型前加ad
d.parameters.Append para1
d.parameters.append para2
d.parameters.append para3
d.parameters.append para4
d.parameters.append para5
d.parameters.append para6
d.parameters.append para7
d.parameters.append para8
d("username")=strusername
d("password")=strpassword
d("realname")=strrealname
d("gender")=strgender
d("tel")=strtel
d("email")=stremail
d("homepage")=strhomepage
d.exectue
可以給我解析一下這段代碼么``順便講一下exectue的用途
解析:
首先定義了參數的名稱和類型
然後將參數添加到存儲過程裡面
exectue是執行相應的SQL語句的
本處執行存儲過程
H. asp調用存儲過程問題
CreateParameter(Name,Type,Direction,Size,Value)
都是可選參數,
Name 參數名,不需要與存儲過程的對應
Type 數據類型,200是字元串,3是整數,具體可以參考adovbs.inc
Direction 方向,1:輸入 2:輸出 或者 4:返回,默認輸入
Size 數據長度
Value 參數值
-------
'設定Command對象使用的資料庫連接
Set cmd.ActiveConnection=conn
'命令文本,這里是存儲過程名
cmd.CommandText="game_work_fish_get_set_complete"
'命令類型,4是存儲過程,1是文本
cmd.CommandType= 4
'創建並添加一個參數
cmd.Parameters.Append cmd.CreateParameter(...)
'給參數賦值
cmd("@community_id") = 值
cmd.execute ' 執行命令
'將輸出參數的值賦給變數
cmd_level_name = cmd("@level_name")
I. 請問ASP中如何調用存儲過程
我用的是asp.net,不知道和asp差別大不大,不知道你用什麼綁定數據,這里我用DataGrid。
using System.Data;
using System.Data.Sqlclient;
Sqlconnection myConnection = new SqlConnection(這里填寫你的連接字元串);
SqlDataAdapter myAdapter = new SqlDataAdapter("這里填寫你的存儲過程名稱",myConnection);
DataSet myDataSet = new DataSet();
myAdapter.Fill(myDataSet);
DataGrid1.DataSource = myDataSet;
DataGrid1.DataBind();
這樣,用存儲過程查找的結果就會輸出到DataGrid上了
歡迎討論,QQ86881052