ADO.NET之Parameter属性
在ADO.NET中,
public SqlParameterCollection Parameters {get;}会得到一个SqlParameter属性。下面通过一个例子进行详细的认识吧。
//例如在一个事件处理方法中有
using (SqlCommand cmd=new SqlCommand())
{
try{
cmd.Connection=conn;
conn.Open();
cmd.CommandType=CommandType.StoredProcedure;
cmd.CommandText="INSERT";
SqlParameter[] prams={
new SqlParameter("@id",SqlDbType.VarChar,8);
new SqlParameter("@name",SqlDbType.VarChar,50);
new SqlParameter("@money",SqlDbType.Float);
new SqlParameter("@age",SqlDbType.VarChar,50);
};
prams[0].Value=this.TextBox1.Text;
prams[1].Value=this.TextBox2.Text;
prams[2].Value=this.TextBox2.Text;
prams[3].Value=this.TextBox3.Text;
//添加参数
foreach(SqlParameter parameter in prams){
cmd.Parameters.Add(parameter);
}
SQlParameter sqlParameter=cmd.Parameters.Add("@Return",SqlDbType.Int);
sqlParameter=ParameterDirection.ReturnValue;
cmd.ExecuteNonQuery();
}
catch(Exception e){
throw new Exception(e.Message);
}
int i=Convert.ToInt16(cmd.Parameters["@return"].Value.toString());
if(i==1){
MessageBox.Show("添加成功");
}else if(i==-1){
MessageBox.Show("添加过程失败");
}
}
}
```
----------
总结:
这里的parameter数组实现的SQL过程就相当于Java里面的PreparedStatement的占位符方式,省去了sql语句书写易错的麻烦。
具体的使用步骤就是:
- 先声明一个Parameter数组,
- 然后为相应位置填充具体的含义(应该和要进行操作的数据库中对应的字段保持一致),
- 然后就在可以在声明的特定的字段中获取到执行结果返回的值了。如
i=Convert.ToInt16(cmd.Parameters[“@return”].Value.toString());
`` SQlParameter sqlParameter=cmd.Parameters.Add(“@Return”,SqlDbType.Int);
便是从
sqlParameter=ParameterDirection.ReturnValue;`声明过之后用到的
ADO.NET之Parameter属性的更多相关文章
- 求助 delphi ADO组件的 CursorLocation属性设置为 clUseServer 用法 [问题点数:20分]
我有个管理系统,所有ADOQUERY组件的 CursorLocation属性设置为 clUseClient,一直运行正常,我尝试全部设置为clUseServer, 系统不运行了,请大家帮忙. 我的做法 ...
- Ado.net 类扩展属性
.要扩展的类名字一样,2个类加(partial) 小例子: using System; using System.Collections.Generic; using System.Linq; usi ...
- delphi实现ado的高级功能
ADO是Microsoft存取通用数据源的标准引擎.ADO通过封装OLE DB而能够存取不同类型的数据,让应用程序能很方便地通过统一的接口处理各种数据库.ADO由一组COM对象组成,每一个不同的原生A ...
- [No0000BC]ADO.NET中的几个主要对象
ADO 指 ActiveX 数据对象(ActiveX Data Objects). 从一个 ASP 页面内部访问数据库的通常的方法是: 创建一个到数据库的 ADO 连接 打开数据库连接 创建 ADO ...
- ADO数据库操作方式
微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件.它提供了编程语言和统一数据访问方式OLE DB的一个中间层.允许开发人员编写访问数据的代码而不用关心数 ...
- ADO数据库编程入门
ADO 是目前在Windows环境中比较流行的客户端数据库编程技术. ADO是建立在OLE DB底层技术之上的高级编程接口,因而它兼具有强大的数据处理功能(处理各种不同类型的数据源.分布式的数据处理等 ...
- Delphi中ADO异步执行方式
当ADO开始处理数据后,应用程序必须等到ADO处理完毕之后才可以继续执行.但是除了同步执行方式之外,ADO也提供了异步执行的方式,允许当ADO处理时,应用程序仍然能够先继续执行.而当ADO处理数据完毕 ...
- ADO.Net连接模式
1.SqlConnection类 (1).通过构造函数创建一个SqlConnection对象,可以同时指定连接字符串 (2).通过SqlConnection对象的Open()方法打开数据库连接 (3) ...
- 浅谈数据库技术,磁盘冗余阵列,IP分配,ECC内存,ADO,DAO,JDBC
整理-----数据库技术,磁盘冗余阵列,IP分配, ECC内存,ADO, DAO,JDBC 1.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由 MySQL AB开发.发布和支持.My ...
随机推荐
- openwrt 下添加sim760ce usb驱动
SIM7500_SIM7600 系列模块的 USB VID 是 0x1E0E PID 是 0x9001. 作为 Slave USB 设备,配置如下表 USB 接口波特率自适应 9600.115200 ...
- rsync 系统用户/虚拟用户 备份web服务器数据及无交互定时推送备份
一.服务环境 (1),WEBserver(192.168.10.130) : BACKserver(192.168.10.129) (2),BACKserver服务器部署,安装所需软件,并启动 (3) ...
- MySQL 内连接与外连接
1.内连接 MySQL中,join,cross join,inner join 是等价的. 2.外连接 2.1 左外连接 left join 2.2 右外连接 right join 3.连接条件 使 ...
- easyui datagrid 得到冻结列跟非冻结列
var head = $('#ClassManagement').datagrid("options").columns; var fhead=$('#ClassManagemen ...
- App上架应用市场,如何攻破安全过检难题
App的安全过检与众所熟知的安全检测是两个完全不同的概念.首先App行业本身对App安全过检有一定的要求与规范,其次2017年6月1日正式实施的<中国网络安全法>中就曾要求App在渠道上线 ...
- Node.js系列文章:利用console输出日志文件
通常我们在写Node.js程序时,都习惯使用console.log打印日志信息,但这也仅限于控制台输出,有时候我们需要将信息输出到日志文件中,实际上利用console也可以达到这个目的的,今天就来简单 ...
- linux系统下安装jdk,mysql,tomcat 和redis 和jedis入门案例
Day47笔记Linux+redis入门 Day47 知识讲解:Jedis 1.Linux上jdk,mysql,tomcat安装(看着文档安装) 准备工作: 因为JDK,TOMCAT,MYSQL的 ...
- LinkedList源码和并发问题分析
1.LinkedList源码分析 LinkedList的是基于链表实现的java集合类,通过index插入到指定位置的时候使用LinkedList效率要比ArrayList高,以下源码分析是基于JDK ...
- 给定 n×n 的实数矩阵,每行和每列都是递增的,求这 n^2 个数的中位数。
#define COL 4 #define ROW 4 int findMedian(int matrix[][COL], int row, int col) { int* arr = new int ...
- Android开发学习之路--Java和Js互相调用
随着前端的火热,以前开发的快速,越来越多的native app在其中融合了h5,就拿淘宝就是很多的h5组成的,一旦出现什么节日,他都可以不用通过更新app来实现界面的改变,而且android和io ...