» 首页 » 电脑_数码 » 编程 » asp.net如何取得存储过程的output,请高手指点

asp.net如何取得存储过程的output,请高手指点

cs文件
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.Sql;
using System.Data.SqlClient;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
SqlConnection con = new SqlConnection("server=.;database=db;uid=sa;pwd=as;");
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "inserttab1";
cmd.CommandType = System.Data.CommandType.StoredProcedure;

cmd.Parameters.Add("@username", System.Data.SqlDbType.VarChar);
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int);
cmd.Parameters["@username"].Value = "tim";
cmd.Parameters["@id"].Direction = System.Data.ParameterDirection.Output;
int id = int.Parse(cmd.Parameters["@id"].Value.ToString());
cmd.ExecuteNonQuery();
con.Close();
Console.WriteLine(id.ToString());
}
}
}
数据库名db
create table tab1
(
id int identity primary key,
username varchar(10)
)
go
create proc inserttab1
@id int output,
@username varchar(10)
as
begin
insert into inserttab1 values(@username)
set @id=@@identity
end
报错!
问题补充:不对啊 还是运行不了
lipai006 你自己运行了没有
我把cs改成了
SqlConnection con = new SqlConnection("server=.;database=db;uid=sa;pwd=as;");
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "inserttab1";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Connection = con;

cmd.Parameters.Add("@username", System.Data.SqlDbType.VarChar);
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int);
cmd.Parameters["@username"].Value = "tim";
cmd.Parameters["@id"].Direction = System.Data.ParameterDirection.Output;
cmd.ExecuteNonQuery();

int id = int.Parse(cmd.Parameters["@id"].Value.ToString());
con.Close();
Console.WriteLine(id.ToString());


我不是给你写了嘛
cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = "jack";
cmd.Parameters.Add("@id", SqlDbType.Int);
cmd.Parameters["@id"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
int id = int.Parse(cmd.Parameters["@id"].Value.ToString());

cmd.ExecuteNonQuery();要写在
int id = int.Parse(cmd.Parameters["@id"].Value.ToString()); 前头
--------------------------------------
连库都没有指定啊。。。。
SqlConnection con = new SqlConnection("server=.;database=db;uid=sa;pwd=as;");
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "inserttab1";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Connection = con;

cmd.Parameters.Add("@username", System.Data.SqlDbType.VarChar);
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int);
cmd.Parameters["@username"].Value = "tim";
cmd.Parameters["@id"].Direction = System.Data.ParameterDirection.Output;
cmd.ExecuteNonQuery();
int id = int.Parse(cmd.Parameters["@id"].Value.ToString());

con.Close();
Console.WriteLine(id.ToString());
绝对没错~!
----------------------------------
没运行 我敢说绝对没错嘛?
不过 好像。。。insert into inserttab1 values(@username) 你这里有错误。。。
应该是
insert into inserttab1(你的那个字段名啊) values(@username)

我不是给你写了嘛
cmd.Parameters.Add("@name", SqlDbType.VarChar).Value = "jack";
cmd.Parameters.Add("@id", SqlDbType.Int);
cmd.Parameters["@id"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
int id = int.Parse(cmd.Parameters["@id"].Value.ToString());

cmd.ExecuteNonQuery();要写在
int id = int.Parse(cmd.Parameters["@id"].Value.ToString()); 前头
--------------------------------------
连库都没有指定啊。。。。
SqlConnection con = new SqlConnection("server=.;database=db;uid=sa;pwd=as;");
con.Open();
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "inserttab1";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
cmd.Connection = con;

cmd.Parameters.Add("@username", System.Data.SqlDbType.VarChar);
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int);
cmd.Parameters["@username"].Value = "tim";
cmd.Parameters["@id"].Direction = System.Data.ParameterDirection.Output;
cmd.ExecuteNonQuery();
int id = int.Parse(cmd.Parameters["@id"].Value.ToString());

con.Close();
Console.WriteLine(id.ToString());
绝对没错~!
----------------------------------
没运行 我敢说绝对没错嘛?
不过 好像。。。insert into inserttab1 values(@username) 你这里有错误。。。
应该是
insert into inserttab1(你的那个字段名啊) values(@username)

 相关问题
·asp.net如何取得存储过程的output,请高手指点
·请帮忙看下这个select语句应该怎么写?
·ASP如何调用ACCESS数据库二进制图片
·Set myobj=server.CreateObject(\"myobj.function\")
·用“茫然若失,魂不守舍,付诸东流,似曾相识”写一段话
·XMLHTTP 错误问题 高手进
·将二进制数1010001101转换成八进制数。
·MSSQL数据导入问题,高手请进
·程序分析题!! 有高手帮做一下的啊!!
·将二进制数11011010转换为八进制数、十进制数、十六进制...
·PHP程序员或ASP程序员一般做什么事啊?
·PHP程序员或ASP程序员一般做什么事?
·高分求助ASP高手帮请指点一下 正则
·ASP中怎样实现向access数据库中添加记录为空值
·POS机是什么

 《asp.net如何取得存储过程的output,请高手指点》答案收集时间:2008-06-14 14:46:59



©2007 电脑技术问答录