|
| » 首页 » 电脑_数码 » 编程 » asp.net如何取得存储过程的output,请高手指点 |
asp.net如何取得存储过程的output,请高手指点 |
|
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,请高手指点》答案收集时间:2008-06-14 14:46:59 |