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. GridView自定义分页

    CSS样式 首先把CSS样式代码粘贴过来: .gv { border: 1px solid #D7D7D7; font-size:12px; text-align:center; } .gvHeade ...

  2. CSS 清除浮动的四种方法

    在实际项目中,我们经常会用到float属性来对页面进行布局.当使用float时,意味着该元素已经脱离了文档流,相当于浮于文档之上,不占据空间.但是针对兄弟元素为文字内容时,会占据一定空间,从而产生文字 ...

  3. opencv2学习:计算协方差矩阵

    图像的高级处理中,协方差矩阵计算是必不可少的,但opencv关于这方面的资料却相当少. 首先,利用matlab计算一下,便于比较: >> data=[1,2,3;10,20,30] dat ...

  4. Linux常用指令---kill | killall(终止进程)

    kill Linux中的kill命令用来终止指定的进程(terminate a process)的运行,是Linux下进程管理的常用命令.通常,终止一个前台进程可以使用Ctrl+C键,但是,对于一个后 ...

  5. 20155224聂小益 - 我的技能与C语言学习

    20155224聂小益 - 我的技能与C语言学习 预备作业2 ● 你有什么技能比大多人(超过90%以上)更好? 我认为我可能有些技能身边有的人比较少有,但是要是超过90%以上我实在不敢保证.毕竟厉害的 ...

  6. nodeJs--模块module.exports与实例化方法;

    在nodejs中,提供了exports 和 require 两个对象,其中 exports 是模块公开的接口,require 用于从外部获取一个模块的接口,即所获取模块的 exports 对象.而在e ...

  7. 移动APP为什么要开发两套Android和IOS-桥接模式

    一.前言 现在用H5开发个 web app 多么方便,兼容两大系统Andriod和IOS.但是为什么许多公司还要开发原生的APP?开发原生的APP就需要开发两套一套运行在Andriod系统的,一套运行 ...

  8. Redis入门学习(一)——安装配置

    最近马上要找实习了,听学长说他们公司里用了redis来解决缓存问题,在大三结束前来学习一下. 问:Redis是什么? 答:(官方)REmote DIctionary Server(Redis)是一个K ...

  9. sublime文档

    英文http://docs.sublimetext.info/en/latest/index.html 翻译http://feliving.github.io/Sublime-Text-3-Docum ...

  10. angular-input

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...