【ADO.NET】 基础 (SQL Server)
一、Web.config配置
<connectionStrings>
<add name="constr_name" connectionString="server=192.168.1.139;uid=sa;pwd=123456;Trusted_Connection=no;Database=dabasename" providerName="system.data.sqlclient"/>
</connectionStrings>
注:constr_name(自定义名),server(sqlserver服务器地址),uid(登录名),pwd(密码),Trusted_Connection(是否使用windows账户登录),Database(数据库名),providerName(数据库类型,sqlserver的为system.data.sqlclient)-
二、C#程序
例1、 获取所有用户
//一、连接数据库
string connectionString = ConfigurationManager.ConnectionStrings["constr_name"].ToString();
SqlConnection conn = new SqlConnection(connectionString);
conn.Open(); //二、构建数据库操作类
SqlCommand command = new SqlCommand();
command.CommandText = "SELECT * FROM [User];";
command.Connection = conn; //三、读取数据
SqlDataReader reader = command.ExecuteReader(); //四、将数据写入对象
User user = null;
List<User> list = new List<User>();
while (reader.Read())
{
user = new User();
user.id = (int)reader["id"];
user.name = reader["name"].ToString(); list.Add(user);
} //五、关闭
reader.Close();
conn.Close(); //另外,User实体类
class User
{
public int id { get; set; }
public string name { get; set; }
}
例2、 使用事务,插入用户数据
int result = ; //一、连接数据库
string connectionString = ConfigurationManager.ConnectionStrings["constr_name"].ToString();
SqlConnection conn = new SqlConnection(connectionString);
conn.Open(); //--开始事务
SqlTransaction trans = conn.BeginTransaction(); try
{
//二、构建数据库操作类
SqlCommand command = new SqlCommand();
command.CommandText = "INSERT INTO [User] VALUES(1,'name1');";
command.Connection = conn;
command.Transaction = trans;//事务
result += command.ExecuteNonQuery();//插入第一条用户数据并返回影响条数 command.CommandText = "INSERT INTO [User] VALUES(2,'name2');";
result += command.ExecuteNonQuery();//插入第二条用户数据并返回影响条数 if (result == )
{
trans.Commit();//两条数据都插入成功则提交事务
}
else
{
trans.Rollback();//否则回滚事务,取消所有插入的数据
} }
catch (System.Exception ex)
{
trans.Rollback();//出错,回滚事务
}
finally
{
conn.Close();
}
另外:
如果忘记关闭连接对象(使用conn.Close();),将影响性能,所以鼓励使用using,详情见以下连接:
http://blog.csdn.net/u011096141/article/details/24370141
当然,忘记关闭的情况应该是在一些比较复杂项目中才会发生。
【ADO.NET】 基础 (SQL Server)的更多相关文章
- ADO.NET 基础 (SQL Server)
一.Web.config配置 <connectionStrings> <add name="constr_name" connectionString=" ...
- .NET Core开发日志——ADO.NET与SQL Server
在.NET世界,如果想要对数据库进行操作,总少不了ADO.NET的身影.在.NET Core里同样离不开那些熟悉的类库与API.这里简略地介绍下如何通过ADO.NET对SQL Server进行不同的处 ...
- ADO.NET访问SQL Server调用存储过程带回参
1,ADO.NET访问SQL Server调用存储过程带回参 2,DatabaseDesign use northwind go --存储过程1 --插入一条商品 productname=芹菜 un ...
- JDBC连接SQL server与ADO.NET连接Sql Server对比
JDBC连接SQL server与ADO.NET连接Sql Server对比 1.JDBC连接SQL server 1)java方面目前有很多驱动能够驱动连接SQL servernet. 主流的有 ...
- 数据库开发基础-SQl Server 基础
SQL Server 基础 1.什么是SQL Server SQL:Structured Query Language 结构化查询语言 SQL Server是一个以客户/服务器(c/s)模式访问.使 ...
- ADO.NET中SQL Server数据库连接池
连接到数据库服务器通常由几个需要很长时间的步骤组成. 必须建立物理通道(例如套接字或命名管道),必须与服务器进行初次握手,必须分析连接字符串信息,必须由服务器对连接进行身份验证,必须运行检查以便在当前 ...
- 使用ADO.NET对SQL Server数据库进行訪问
在上一篇博客中我们给大家简介了一下VB.NET语言的一些情况,至于理论知识的学习我们能够利用VB的知识体系为基础.再将面向对象程序设计语言的知识进行融合便可进行编程实战. 假设我们须要訪问一个企业关系 ...
- 数据库开发基础-SQl Server 聚合函数、数学函数、字符串函数、时间日期函数
SQL 拥有很多可用于计数和计算的内建函数. 函数的语法 内建 SQL 函数的语法是: SELECT function(列) FROM 表 函数的类型 在 SQL 中,基本的函数类型和种类有若干种.函 ...
- 数据库开发基础 SQL Server 数据库的备份、还原与分离、附加
认识数据库备份和事务日志备份 数据库备份与日志备份是数据库维护的日常工作,备份的目的是 一.在于当数据库出现故障或者遭到破坏时可以根据备份的数据库及事务日志文件还原到最近的时间点将损失降到最低点 二. ...
- 数据库开发基础-SQl Server 控制数据库的服务+数据库的创建与管理(增删改查)
控制数据库的服务: 方法一: 1.Windows+R 打开运行 打开cmd 2.输入net start MSSQLserver 启动数据库服务 输入net stop MSSQLserver 关闭数据 ...
随机推荐
- 使用URL dispatcher的范例
在上面的一篇文章中,我们介绍了怎样使用URL disptacher.在这篇文章中,我们来通过一个范例更进一步来了解怎样实现它. 1)创建一个具有URL dispatcher的应用 我们首先打开我们的S ...
- HUST1017 Exact cover —— Dancing Links 精确覆盖 模板题
题目链接:https://vjudge.net/problem/HUST-1017 1017 - Exact cover 时间限制:15秒 内存限制:128兆 自定评测 7673 次提交 3898 次 ...
- Oracle:通过pl/sql developer工具导入excel数据
1.在pl/sql developer中选择工具-->ODBC导入器 2.选择需要导入的EXCEL文件(CVS也可以):用户名.口令不用管,直接点“连接”,找到要导入的xls文件 3. 选择“导 ...
- 【摘抄】u3d|unity学习教程与方法
小编,因为下面这句话,还是决定,只摘链接地址(来自百度经验): http://jingyan.baidu.com/article/19192ad820f17be53e570715.html 经验内容仅 ...
- CollectionView网格布局
说句老实话,UICollectionView真的太强大了,而且要掌握高级部分是相当困难的.至少笔者是这么认为的,如果觉得自己比较厉害,可以轻而易举地掌握UICollectionView的使用的,希望可 ...
- [Selenium] 搭建 Android WebDriver 环境
1.安装 Android SDK 到如下网址下载 Android SDK http://developer.android.com/sdk/index.html 2.创建 Android 虚拟设备 解 ...
- 嵌入式Linux学习方法——给那些彷徨者(下)
上一章解决了嵌入式Linux的“学什么”问题,这一章则具体来说一下“怎么学”. 只要做好以下3点: 1.学习顺序.学习任何东西都应该由浅入深,不能一口吃下一个大胖子,得循序渐进.很多刚开始想学习Lin ...
- bzoj4555
ntt+cdq分治 原来zwh出的cf是斯特林 第二类斯特林数的定义是S(i,j)表示将i个物品分到j个无序集合的方案数,那么这道题中S(i,j)*j!*2^j是指将i个物品分到j个有序集合中并且每个 ...
- Swift3.0 UICollectionView 删除,拖动
UICollectionView实现了一下常见的新闻分类. 附有效果图 近期一直在深入学习swift,实现了CollectionView item的头东与删除,用的都是系统的一些函数方法,看起来比较 ...
- 了解Hypertable
1.为什么要了解Hypertable, 因为全球最大的搜索引擎公司百度使用了Hypertable(http://www.baidu.com/s?wd=Hypertable),Hypertable类似于 ...