在GBASE南大通用ADO.NET 中调用一个存储过程

使用 GBASE南大通用ADO.NET 调用一个存储过程,要先创建一个GBASE南大通用Command 对象并且使用属性 CommandText 传递存储过程名,并将属性 CommandType 设为CommandType.StoredProcedure。为存储过程中的每个输入、输出参数创建一个GBaseCommand 参数。使用 GBASE南大通用Command.ExecuteNonQuery()方法来调用存储过程。

调用存储过程的步骤:

1) 使用 GBaseConnection 创建数据库连接对象

2) 使用 GBaseCommand 创建命令对象

3) 使用连接对象打开连接

4) 设置命令对象的属性 CommandType 为 CommandType.StoredProcedure,

并关联连接对象

5) 设置命令对象的参数与库中要访问的存储过程参数一一对应

6) 执行命令对象的 ExecuteNonQuery 方法完成调用

7) 使用 GBaseCommand.Parameters 的属性 Value 获得输出参数的值

8) 关闭数据库连接

下面是使用 GBase ADO.NET 调用一个存储过程并获取输出参数的完整例

子。

C# 示例:

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Data;

using GBase.Data;

using GBase.Data.GBaseClient;

using System.Diagnostics;

namespace UsingStoredRoutines

{

class Program

{

static void Main(string[] args)

{

GBaseConnection _Conn = new GBaseConnection();

_Conn.ConnectionString =

"server=192.168.5.41;user=root;database=test;password=1;pooling=fals

e";

GBaseCommand _Cmd = new GBaseCommand();

try

{

Console.WriteLine("Connecting to GBase...");

_Conn.Open();

_Cmd.Connection = _Conn;

_Cmd.CommandText = "add_emp";

_Cmd.CommandType = CommandType.StoredProcedure;

_Cmd.Parameters.AddWithValue("@lname", "Jones");

_Cmd.Parameters["@lname"].Direction =

ParameterDirection.Input;

_Cmd.Parameters.AddWithValue("@fname", "Tom");

_Cmd.Parameters["@fname"].Direction =

ParameterDirection.Input;

_Cmd.Parameters.AddWithValue("@bday",

"1940-06-07");

_Cmd.Parameters["@bday"].Direction =

ParameterDirection.Input;

_Cmd.Parameters.AddWithValue("@empno",

GBaseDbType.Int32);

_Cmd.Parameters["@empno"].Direction =

ParameterDirection.Output;

_Cmd.ExecuteNonQuery();

Console.WriteLine("Employee number: " +

_Cmd.Parameters["@empno"].Value);

Console.WriteLine("Birthday: " +

_Cmd.Parameters["@bday"].Value);

}

catch (GBaseException ex)

{

Console.WriteLine("Error " + ex.Number + " has

occurred: " + ex.Message);

}

finally

{

if (_Conn != null)

_Conn.Close();

Console.WriteLine("None.");

}

}

}

相关推荐

  1. GBASE通用ADO.NET 调用一个存储过程

    2023-12-21 01:14:04       35 阅读
  2. GBASE通用读取数据库数据

    2023-12-21 01:14:04       34 阅读
  3. GBASE通用-CodeFirst 模式

    2023-12-21 01:14:04       38 阅读
  4. GBASE通用ExecuteReader 方法

    2023-12-21 01:14:04       33 阅读
  5. GBASE通用系统目录表

    2023-12-21 01:14:04       36 阅读
  6. GBASE通用ExecuteScalar 方法

    2023-12-21 01:14:04       33 阅读
  7. GBASE通用数据库GBase JDBC的格式

    2023-12-21 01:14:04       36 阅读
  8. GBASE通用GBase 8a 安装部署

    2023-12-21 01:14:04       27 阅读

最近更新

  1. TCP协议是安全的吗?

    2023-12-21 01:14:04       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-21 01:14:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-21 01:14:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-21 01:14:04       18 阅读

热门阅读

  1. C 语言运算符详解

    2023-12-21 01:14:04       36 阅读
  2. 解决mp4视频无法拖动进度条的问题

    2023-12-21 01:14:04       108 阅读
  3. git基本命令

    2023-12-21 01:14:04       50 阅读
  4. 用Python制作二维码

    2023-12-21 01:14:04       37 阅读
  5. VGG卷积神经网络:深度学习中的强大工具

    2023-12-21 01:14:04       38 阅读
  6. Golang 内存分配机制详解

    2023-12-21 01:14:04       37 阅读
  7. goland的debug模式修复

    2023-12-21 01:14:04       46 阅读
  8. CUDA编程示例:CPU预处理->GPU处理->CPU后处理

    2023-12-21 01:14:04       29 阅读