.net调用存储过程详细介绍

网络编程 2025-04-05 02:01www.168986.cn编程入门

原文:

在繁华的都市中,有一所古老的书店静静矗立。它的历史可以追溯到上个世纪,见证了这座城市的变迁。走进书店,仿佛穿越了时空,回到了那个书香弥漫的年代。

书店的每一本书都承载着作者的心血和智慧。无论是厚重的历史典籍,还是轻快的青春小说,这里都有。每一本书都在诉说着不同的故事,吸引着读者沉浸其中。在这里,人们可以感受到知识的力量,追寻梦想的足迹。

店主是一位热爱书籍的中年人,他热爱这片土地和这片土地上的文化。他精心挑选每一本书,确保书店里的书籍都是精品。他常说,书籍是人类进步的阶梯,他希望这个书店能成为人们通往知识殿堂的桥梁。

时光荏苒,岁月如梭。虽然现代科技飞速发展,但这家书店依然坚守着自己的使命。它见证了太多人的成长和变化,成为了一代又一代人心中的精神驿站。在这里,人们可以找到慰藉,获得力量,重新出发。

在喧嚣的都市脉搏中,一间古韵盎然的书店静静伫立。它的历史源远流长,见证了这座城市的沧桑巨变。踏入其中,仿佛穿越了时空的隧道,回到了那个弥漫书香的黄金时代。

这家书店的每一本书都是作者的灵魂结晶与智慧瑰宝。从厚重的历史巨著到轻盈的青春文学,这里应有尽有。每一本书都诉说着不同的故事,吸引着读者投入其中,领略知识的魅力与力量,追寻梦想的足迹。

店主是一位热爱文化、钟情于书籍的中年绅士。他精心挑选每一本书籍,确保书店的藏书都是文化瑰宝。他深信书籍是人类进步的阶梯,希望他的书店能成为一座通往知识殿堂的桥梁。

连接字符串与数据库配置

在配置数据库连接时,我们使用了Northwind数据库的自带数据。连接字符串是访问数据库的关键,它位于应用程序的配置文件中。下面是获取连接字符串的示例代码:

```csharp

string conn = ConfigurationManager.ConnectionStrings["NorthwindConnectionString"].ConnectionString;

```

在config文件中,连接字符串被定义如下:

```xml

```

接下来,我们将展示如何使用这个连接字符串来执行不同的存储过程。

1. 返回单一记录集的存储过程

我们创建一个SqlConnection对象来连接到数据库,然后使用SqlCommand对象来执行存储过程。下面是C代码的示例:

```csharp

SqlConnection sqlconn = new SqlConnection(conn);

SqlCommand cmd = new SqlCommand();

cmd.Connection = sqlconn;

cmdmandText = "Categoriestest1";

cmdmandType = CommandType.StoredProcedure;

```

存储过程Categoriestest1的SQL代码为:

```sql

CREATE PROCEDURE Categoriestest1

AS

SELECT FROM Categories

GO

```

此存储过程将查询Categories表并返回结果集。在C中,我们将结果集绑定到GridView控件以显示数据。

2. 无输入输出的存储过程

以下C代码演示了如何执行没有输入输出的存储过程Categoriestest2:

```csharp

SqlConnection sqlconn = new SqlConnection(conn);

SqlCommand cmd = new SqlCommand();

cmd.Connection = sqlconn;

cmdmandText = "Categoriestest2";

cmdmandType = CommandType.StoredProcedure;

sqlconn.Open();

Label1.Text = cmd.ExecuteNonQuery().ToString();

sqlconn.Close();

```

存储过程Categoriestest2的SQL代码为:

```sql

CREATE PROCEDURE Categoriestest2

AS

INSERT INTO dbo.Categories (CategoryName,[Description],[Picture]) VALUES ('test1','test1',null)

GO

```

3. 有返回值的存储过程

对于有返回值的存储过程Categoriestest3,我们在C代码中创建了参数以接收返回值:

```csharp

SqlConnection sqlconn = new SqlConnection(conn);

SqlCommand cmd = new SqlCommand();

cmd.Connection = sqlconn;

cmdmandText = "Categoriestest3";

cmdmandType = CommandType.StoredProcedure;

IDataParameter[] parameters = { new SqlParameter("rval", SqlDbType.Int,4) };

parameters[0].Direction = ParameterDirection.ReturnValue;

cmd.Parameters.Add(parameters[0]);

``` 接着执行存储过程并获取返回值。存储过程Categoriestest3的SQL代码与Categoriestest2相同,但它还使用RETURN语句返回一个值。在C中,我们可以获取这个返回值并显示。 接下来是几个具有不同参数类型的存储过程的示例和相应的C代码。这些存储过程包括输入参数、输出参数和返回值。对于每个示例,我们都提供了相应的SQL代码和C代码来执行存储过程并处理结果。 我们还介绍了返回多个记录集的存储过程的示例。这种存储过程可以返回多个结果集,我们可以在C中使用多个DataSet和GridView来显示这些结果集。希望这些信息对你有所帮助!如果你有任何其他问题,请随时提问。

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by