一.ADO.NET :用于连接数据库的技术
  1.ADO.NET分为两大组件
   DataSet:数据集
   .NET FRAMWORK :用于连接到数据库,发送命令,检索结果
  2.ADO.NET四大核心对象
   Connection
   Command
   DataAdapter
   DataReader
 二.使用ADO.NET访问数据库
  1.首先导入命名空间System.Data.SqlClient
  2.创建连接字符串
   String constr="Data Source=.;Initial Catalog=SchoolDB;User=sa;Password=.";
   如果没有密码password参数可以省略
  3.创建SqlConnection连接对象
   SqlConnection con=new SqlConnection(constr);
  4.打开数据库连接
   con.Open();
   在使用数据库之前要保证数据库连接是打开的
   con.Close();
   使用完数据库之后要关闭连接,释放资源
 三.捕获异常
  try{
    //将可能会发生异常的代码放入到try中
  }catch(异常类型)
    //如果try块发生异常,并且异常类型和catch块所捕获的异常类型相匹配,那么会执行catch
  {
  }finally{
    //无论任何情况都会走到finally块
  }
  捕获异常可以将异常捕获到,而不会导致程序的停止
 四.向数据库发送命令
  1.创建SQL语句
    String sql="select count(*) from Student Where StudentName='"+username+"' and Password='"+Password+"'";
  2.使用Command对象发送SQL命令
    SqlCommand com=new SqlCommand(sql,con);
  3.接收命令执行结果
    int count=(int)com.ExecuteScalar();
    ExecuteNonQuery() 执行不返回行的语句,如UPDATE等
    ExecuteReader() 返回DataReader对象
    ExecuteScalar() 返回单个值,如执行带COUNT(*)的SQL语句
  4.登录案例
   public bool ValidateUser() {
             bool falg=true;
             String constr = "Data Source=.;Initial Catalog=SchoolDB;User=sa;Password=.";
             SqlConnection con = new SqlConnection(constr);
             try
             {
                 //打开连接
                 con.Open();
                 Console.WriteLine("请输入用户名:");
                 string username=Console.ReadLine();
                 Console.WriteLine("请输入密码:");
                 string password = Console.ReadLine();
                 //1.编写SQL
                 string sql = "select count(*) from Student where StudentName='"+username+"' and LoginPwd='"+password+"'";
                 //2.创建Command对象
                 SqlCommand com = new SqlCommand(sql,con);
                 int count=(int)com.ExecuteScalar();
                 if (count > 0)
                 {
                 }
                 else {
                     falg = false;
                 }
             }
             catch (Exception e)
             {
                 Console.WriteLine(e);
             }
             finally {
                 con.Close();
             }
             return falg;
         }
 

使用 ado.net访问数据库的更多相关文章

  1. ado无法访问数据库问题

    现象:以ADO方式访问数据库的C++程序,在一台计算机上能访问成功,在另一台计算机上却访问不成功,报告不能连接错误,并且这两台计算机都装有ado. 原因:ado版本不对 解决方案:下载KB983246 ...

  2. 使用ADO.NET 访问数据库

    一.ADO.NET :用于连接数据库的技术 1.ADO.NET分为两大组件 DataSet:数据集 .NET FRAMWORK :用于连接到数据库,发送命令,检索结果 2.ADO.NET四大核心对象 ...

  3. C#使用ADO.NET访问数据库(一)

    博主好久没更新博客了,最近有点忙(打麻将0.0..),今天更新一篇C#的,我还是想坚持更新博客,分享一下自己的心得,闲话少说,开始正题~~ ADO.NET概述:ADO.NET的作用在于他是客户端访问服 ...

  4. ADO.NET 访问数据库

    对数据库的访问时各种数据库应用程序开发的核心技术,.NET框架中提出的ADO.NET技术为应用程序的开发提供了一致的接口,增强了程序的可移植性和可扩展性. a:使用链接对象Connection连接数据 ...

  5. ADO.NET访问数据库

    1:ADO.NET数据库的方法和技术 2:ADO.NET的主要组成: 1>DataSet(数据集)-----独立于数据间的数据访问 2>.NETFramework(数据提供程序)----- ...

  6. 第十三章 使用ADO.NET访问数据库

    一,什么是ADO.NET ADO.NET 是一种以面向对象的设计方法构建的数据访问和操作的类库,它建立在.NET平台上,以便于操作各种各样的数据源.这些数据源可以是数据库, 也可以是文本文件 ,EXC ...

  7. 使用ADO.NET访问数据库

    第一种连接数据库的方法:可以使用.ET Framework提供程序的sqlConnection对象,使用无参数的构造函数创建Connection对象,代码如下: string strcon = &qu ...

  8. C++版本 ORM 访问数据库之ODB 的Window环境编译(一)

    先简单说说我为什么要编译一个ORM访问数据库的版本, 以前在做C#访问数据库时候, 直接以orm方式访问数据库, 代码写起来简单,  不用写各种复杂的sql语句, 直接有orm框架生成, 后来转到C+ ...

  9. ADO.NET 连接方式和非链接方式访问数据库

    一.//连接方式访问数据库的主要步骤(利用DataReader对象实现数据库连接模式) 1.创建连接对象(连接字符串) SqlConnection con = new SqlConnection(Co ...

随机推荐

  1. 基于redis的分布式锁(转)

    基于redis的分布式锁 1 介绍 这篇博文讲介绍如何一步步构建一个基于Redis的分布式锁.会从最原始的版本开始,然后根据问题进行调整,最后完成一个较为合理的分布式锁. 本篇文章会将分布式锁的实现分 ...

  2. linux下的启停脚本

    linux下的根据项目名称,进行进程的启停脚本 #!/bin/bash JAVA=/usr/bin/java APP_HOME=/opt/program/qa/wechat APP_NAME=prog ...

  3. 内网环境使用ansible安装software 需要外网时,如何绑定代理呢

    内网环境使用ansible安装software 需要外网时,如何绑定代理呢? 方法一: 在ansible 的脚本里,yum install 的地方,添加语句: environment: https_p ...

  4. 【改】利用ALSA库进行音频重采样

    转自:http://www.voidcn.com/article/p-snamarwr-p.html 一.ALSA介绍: 1.简介: 高级Linux声音体系(英语:Advanced LinuxSoun ...

  5. git上传

    #1.Git 全局设置: git config --global user.name "skbarcode" git config --global user.email &quo ...

  6. getter unddfined

    今天用vue.js写代码 报错: getter unddfined 错误原因:没有在main.js中注册store

  7. 20165309 《网络对抗技术》实验五:MSF基础应用

    20165309 <网络对抗技术>实验五:MSF基础应用 1.基础问题回答 (1)什么是exploit? (2)什么是payload? (3)什么是encode? (4)离实战还缺些什么技 ...

  8. Linux进程管理的学习

    uptime 简洁显示服务器负载 uptime 显示内核版本 uname -r dstat命令 cpu.内存.io等查看工具 dstat dstat --top-cpu dstat --top-io ...

  9. ES9新内容概括

    本文主要介绍ES2018 新出的一些特性 1.异步迭代 允许 async/await 与 for-of 一起使用,以串行的方式运行异步操作,达到异步函数的迭代效果. async function pr ...

  10. 【PYTHON】a-start寻路算法

    本文章适合黄金段位的LOL大神,同样更适合出门在外没有导航,就找不到家的孩子. 在英雄联盟之中,当你和你的队友都苦苦修炼到十八级的时候,仍然与敌方阵营不分胜负,就在你刚买好装备已经神装的时候,你看见信 ...