【ADO.NET】1、简单配置与使用
ExecuteReader(); //返回查询到的数据,一次一行,用于 select
ExecuteNonQuery(); //返回影响的行数,用于 delete,insert,update
ExecuteScalar(); //返回第一行,第一列的数值,类型为 Object,用于查询 最大值,绝对值,统计数据...等
---------------
using() 的使用
---------------
using() 用于对资源的释放,当程序运行到using以外,资源将自动释放,相当于 conn.Dispose()
using在出了作用域以后调用Dispose,Dispose内部会做这样的判断:有没有close,没有就先close再Dispose
conn.Open() 打开连接
conn.Close() 关闭连接,关了还可以打开
conn.Dispose() 销毁连接,销毁后无法再打开
using(SqlConnection conn = new SqlConnection("server=.;database=mytest;uid=sa;pwd=gao;"))
{
conn.Open();
}
Console.WriteLine("打开数据库连接成功");
Console.ReadKey();
---------------------------
将连接字符串放到配置文件中
---------------------------
在app.config 或 web.config中,加入如下
<connectionStrings>
<add name="ConnStr" connectionString="server=.;database=mytest;uid=sa;pwd=gao"/>
</connectionStrings>
增加引用: System.configuration
增加命名空间:using System.Configuration;
string Str = ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString; //获取字符串
SqlConnection conn = new SqlConnection(Str); //调用字符串
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from mydo";
using (SqlDataReader dr = cmd.ExecuteReader())
{
while (dr.Read())
{
int dbId = dr.GetString(dr.GetOrdinal("id")); //获取ID列值
string dbName = dr.GetString(dr.GetOrdinal("username")); //获取username
string dbPwd = dr.GetString(dr.GetOrdinal("passwd")); //获取passwd
Console.WriteLine("ID={0},UserName={1},Passwd={2}",dbId,dbName,dbPwd);
}
}
}
}
返回第一行,第一列的数值,类型为 Object
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select count(*) from mydo"; //统计行数
Console.WriteLine(Convert.ToString(cmd.ExecuteScalar())); //返回第一行,第一列
}
}
显示新插入的主键值
using (SqlConnection conn = new SqlConnection("Data Source=.;database=mytest;uid=sa;pwd=gao;"))
{
conn.Open();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "insert into T_User(Name,Pwd) output inserted.Id values('admin','1234')";
int id = Convert.ToInt32(cmd.ExecuteScalar());
Console.WriteLine("新插入的主键值:{0}",id);
}
}
// 设置参数为 OutPut 参数
cmd.Parameters.Add("@Amount", SqlDbType.Decimal).Direction=ParameterDirection.Output; // 设置参数为 RetrunValue
cmd.Parameters.Add("@Amount", SqlDbType.Decimal).Direction=ParameterDirection.ReturnValue; // 获得输出参数值
cmd.Parameters["@Amount"].Value;
【ADO.NET】1、简单配置与使用的更多相关文章
- 小丁带你走进git世界一-git简单配置
小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config –global user.name BattleHeaer ...
- 以实际的WebGIS例子探讨Nginx的简单配置
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 以实际项目中的一个例子来详细讲解Nginx中的一般配置,其中涉 ...
- CentOS 7.0 使用 yum 安装 MariaDB 与 MariaDB 的简单配置
1.安装MariaDB 安装命令 yum -y install mariadb mariadb-server 安装完成MariaDB,首先启动MariaDB,两条命令都可以 systemctl sta ...
- ssm简单配置
MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架. MyBatis 摒除了大部分的JDBC代码.手工设置参数和结果集重获. MyBatis 只使用简单的XML 和注解来配置和映射 ...
- 安装MariaDB和简单配置
1.安装MariaDB 安装命令 yum -y install mariadb mariadb-server 安装完成MariaDB,首先启动MariaDB systemctl start maria ...
- BIND的进程一:DNS简单配置与的主从配置
DNS的简单配置和DNS的主从配置 摘要:DNS(Domain-Name Server) ,DNS的服务起到的作用就是名称解析,在网络通讯来说计算机与计算机是通过IP地址相互通信的, 当是IP地址 ...
- 转-squid介绍及其简单配置
本文原始出处:http://linuxme.blog.51cto.com/1850814/372960 1.Squid是什么? Squid中文权威指南:http://zyan.cc/book/squi ...
- Linux中vim的简单配置
本文主要分享Linux中vim的简单配置 ★配置文件的位置 在目录/etc.下面,有个名为vimrc的文件,这就是系统中公共的vim配置文件,对所有用户都开放.而在每个用户的主目录下,都可以自 ...
- CCNA网络工程师学习进程(6)vlan相关协议的配置与路由器简单配置介绍
前面已经介绍了大部分与vlan技术相关的交换机的协议的配置,更深层次的还有STP协议和以太网端口聚合技术,接着还会简单介绍一下路由器的基本应用. (1)STP(Spanning-tre ...
- lvs简单配置
负载均衡服务器将会用到两块网卡,eth0为公网地址(此处将局域网ip作为公网地址),IP地址为192.168.1.104,eth0:1,IP地址为192.168.2.1在负载均衡器上添加一个ip别名, ...
随机推荐
- unexpected error ConnectionError object has no attribute
unexpected error ConnectionError object has no attribute
- 几年的Git使用技巧总结
用git有一年了,下面是我这一年来的git使用总结,覆盖了日常使用中绝大多数的场景.嗯,至少是够用一年了,整理出来分享给大家,不明白的地方可以回复交流. 创建和使用git ssh key 首先设置gi ...
- PC-红警联机问题与下载
或许不是软件问题: 你做好相关设置了吗? 红警局域网联机的具体方法: 适用于原版红警.尤里复仇,及任何同样的扩展版. 第一步:安装IPX协议. 方法: 控制面板——网络连接(或网上邻居·属性)——本地 ...
- SDWebImage 图片加载和缓存
SDWebImage托管在github上.https://github.com/rs/SDWebImage 这个类库提供一个UIImageView类别以支持加载来自网络的远程图片.具有缓存管理.异步下 ...
- Properties操作
import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream; ...
- 安卓问题http://blog.csdn.net/xb12369/article/details/50510302
- Android_消息机制
Android通过Looper.Handler来实现消息循环机制. Android的消息循环是针对线程的,每个线程都可以有自己的消息队列和消息循环. Android系统中的Looper负责管理线程的消 ...
- Angular和jQuery的ajax请求的差别
近期项目中使用angular,结果发现后台没法获取參数,所以,略微研究了一下两者在发送ajax时的差别. 注意angular和jquery的ajax请求是不同的. 在jquery中,官方文档解释con ...
- Android+OpenCV 摄像头实时识别模板图像并跟踪
通过电脑摄像头识别事先指定的模板图像,实时跟踪模板图像的移动[用灰色矩形框标识] ps:一开始以为必须使用OpenCV Manager,可是这样会导致还需要用户去额外安装一个apk,造成用户体验很差, ...
- Centos6下yum安装MariaDB5.5(转)
原文地址:http://www.cnblogs.com/kgdxpr/p/3209009.html vi /etc/yum.repos.d/MariaDB.repo 加入下面内容 [mariabd]n ...