1、 ADO.NET

-> 连接字符串,常用的两种方式:

server=计算机名或ip\实例名;database=数据库名;uid=sa;pwd=密码;

server=计算机名或ip\实例名;database=数据库名;integrated security=true;

-> 常用的类库

SqlConnection 连接数据库用

SqlCommand      执行SQL语句

SqlDataReader 读取的对象(此种读取数据的方式有点像StreamReader)

SqlAdapter    将数据库中的数据放入DataSet

DataSet       内存级别的离线数据库(有点像FileStream.Read)

对比模型

(图片来自网络,若是原文作者看到,请提供链接地址,时间很久远了.......)

-> 连接数据库的步骤

-> 写连接字符串

-> 创建连接对象,使用连接字符串

-> Open,打开数据库

-> 关闭释放数据库,可以使用using

2、执行SQL语句

-> 使用SqlCommand对象

-> 步骤:

-> 首先创建SQL语句字符串(sql)与连接通道SqlConnection(conn)

 string sql = "insert into tbl(id, name) values(1, '123');"
SqlConnection conn = new SqlConnection(@"server=计算机名或ip\实例名;database=数据库名;uid=sa;pwd=密码;");

-> 创建SqlCommand对象,将sql与conn交给它(通过构造函数或属性)

 SqlCommand cmd = new SqlCommand(sql, conn);

-> 在Open的情况下,调用方法(SqlCommand对象的方法)

 conn.Open();
cmd.方法();

-> 常用的三个方法

 ExecuteNonQuery()   专门执行非查询语句(增、删、改等),返回受影响行数
ExecuteScalar() 执行查询,返回的是结果中第一行第一列的数据(object)
ExecuteReader() 专门执行查询,可以获得多行多列的数据

3、 先创建一个表,插入数据

注意问题

-> sql语句如果在SSMS中执行没有问题在ADO.Net一般不会出现问题

-> 关于主键和自动增长

-> 连接字符串数据库的名字

-> 关于约束

异常处理

 try
{
// 可能出现异常的代码
} catch(Exception ex) {
// 出现异常之后的代码
} finally
{
// 用来关闭连接
}

4、 ExecuteScalar()

-> 读取数据,获取第一行与第一列

-> 执行中除了SQL语句和执行方法不同流程都一样

5、-> 将SQL语句中的参数拼接修改一下

-> 凡是要用到参数的地方,都将这个变数,写成一个变量

-> 使用的时候为这个变量赋值即可

-> 实现步骤

-> 写SQL语句的时候,用"@别名"代替挖坑的地方

  select COUNT(*) from tblLogin where logUid='{0}' and logPwd='{1}';容易sql注入漏洞攻击
select COUNT(*) from tblLogin where logUid=@logUid and logPwd=@logPwd;

-> 在ADO.Net中执行SQL语句前(cmd.方法()调用前)

-> 创建一个对象,SqlParameter

 SqlParameter p = new SqlParameter(参数的别名, 参数的值);
SqlParameter p1 = new SqlParameter("@logUid", txtUid.Text.Trim());
SqlParameter p2 = new SqlParameter("@logPwd", txtPwd.Text);

-> 将参数加到cmd对象中

cmd.Parameters.Add(参数对象);
cmd.Parameters.Add(p1);

操作sqlserver数据库常用的三个方法的更多相关文章

  1. Oracle数据库备份与恢复的三种方法

    转自blueskys567原文Oracle数据库备份与恢复的三种方法, 2006-10. 有删改 Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份. 导出 ...

  2. 【EF】EntityFramework 更新数据库字段的三种方法

    实体类 public class TestDbContext : DbContext { public DbSet<Test> Tests { get; set; } public Tes ...

  3. java数据库 JDBC操作MySQL数据库常用API 部门表和员工表 创建表 添加数据 查询数据

    package com.swift.department; import java.sql.Connection; import java.sql.PreparedStatement; import ...

  4. Java连接并操作SQLServer数据库

    本人只需在项目中引入sqljdbc4.jar 包即可 ----------------------------------------- 在JAVA中如何连接SQL Server数据库 - hangh ...

  5. sqlServer数据库常用连接字符串

    sqlServer   数据库常用连接字符串 用户名和密码验证的方式去连接到数据库服务器 <add name="conStr" connectionString=" ...

  6. Entity Framework 数据库初始化的三种方法

    在数据库初始化产生时进行控制,有三个方法可以控制数据库初始化时的行为.分别为CreateDatabaseIfNotExists.DropCreateDatabaseIfModelChanges.Dro ...

  7. MySQL数据库改名的三种方法

    前不久去面试,被问到Innodb引擎的表如何改数据库名,当时我也只回答了MyISAM改如何操作,被一些细节问题打败,真是操蛋. 如果表示MyISAM那么可以直接去到数据库目录mv就可以. Innodb ...

  8. EntityFramework 更新数据库字段的三种方法

    例: 实体类: public class TestDbContext : DbContext { public DbSet<Test> Tests { get; set; } public ...

  9. C#通过SqlConnection连接查询更新等操作Sqlserver数据库

    Sqlserver数据库连接方式有多种,这里只介绍最常用的通过SqlConnection和Sqlserver数据库用户名和密码验证来进行操作数据库. 数据库连接字符串: string connStri ...

随机推荐

  1. caffe windows 学习第一步:编译和安装(vs2012+win 64)

    没有GPU,没有linux, 只好装caffe的windows版本了. 我的系统是win10(64位),vs 2012版本,其它什么都没有装,因此会需要一切的依赖库. 其实操作系统只要是64位就行了, ...

  2. qt中文乱码问题

    首先,声明一下,QString 是不存在中文支持问题的,很多人遇到问题,并不是本身 QString 的问题,而是没有将自己希望的字符串正确赋给QString. 很简单的问题,"我是中文&qu ...

  3. 编写高质量代码改善C#程序的157个建议[泛型集合、选择集合、集合的安全]

    前言   软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开 ...

  4. redmine邮件发送功能配置详解

    redmine的邮件发送功能还是很有用的.像项目有更新啦,任务分配啦,都能邮件发送的相关责任人.我自己在linux服务器上安装并启动了redmine后,邮件一直发送了不了.查了网上的资料,都是讲修改下 ...

  5. jQuery Mobile学习日记

    本次主讲人是王思伦啦啦啦~ 框架特性 jQuery Mobile 以“Write Less, Do More”作为目标,为所有的主流移动操作系统平台提供了高度统一的 UI 框架:jQuery 的移动框 ...

  6. iOS边练边学--NSURLSession、NSURLSessionTask的介绍与使用以及url中包含了中文的处理方法

    一.NSURLSession.NSURLSessionTask的使用步骤 首先创建NSURLSession对象 通过NSURLSession对象创建对应的任务 <1>NSURLSessio ...

  7. 列表 list

    例子: #!/usr/bin/python li = list([11,22,33,66,99,77]) print(li) li.extend((44,55,)) print(li) ret = l ...

  8. Spring POST

    Spring POST+表单对象如果数据格式不正确,则页面直接报400.页面没有反应,烦啊

  9. codevs3243 区间翻转

    题目描述 Description 给出N个数,要求做M次区间翻转(如1 2 3 4变成4 3 2 1),求出最后的序列 输入描述 Input Description 第一行一个数N,下一行N个数表示原 ...

  10. MVC模式的学生信息增删改查

    准备:建一个名为 userdb的数据库.建一个student表,有stuid,stuname,gender三个字段.其中stuid为主键.j加入相应的驱动包,相应的JSTL标签 先看目录结构 代码: ...