使用ADO.NET
Program
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; namespace 打开数据库 { class Program { static void Main(string[] args) { #region 连接数据库 //步骤一:配置参数(连接到服务器,连接的数据库名称,用户名,密码) string str = "Data Source=.;Initial Catalog=Myschool;User ID=sa;pwd=1"; //步骤二:创建Connection对象连接数据库(SqlConnection) SqlConnection con = new SqlConnection(str); //步骤三:打开数据库 con.Open(); Console.WriteLine("打开数据库成功!");
//步骤N:将数据库关闭 con.Close(); Console.WriteLine("关闭数据库成功!"); #endregion
#region 数据库异常 try { con.Open();
} catch(SqlException ex){ Console.WriteLine("出现异常"+ex); } catch (Exception ex) { Console.WriteLine("出现异常!" + ex); } finally { con.Close(); Console.WriteLine("关闭数据库成功!"); } #endregion
#region 登录 Console.WriteLine("请输入用户名:"); string loginID = Console.ReadLine(); Console.WriteLine("请输入密码:"); string loginPwd = Console.ReadLine(); User user = new User(); user.login(loginID, loginPwd); #endregion Console.ReadLine(); } } }
ConnectionDB类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; namespace 打开数据库 { class ConnectionDB { static string str = "Data Source=.;Initial Catalog=Myschool;User ID=sa;password=1"; public SqlConnection con = new SqlConnection(str); public void OpenDB() { try { con.Open(); } catch (Exception ex) {
Console.WriteLine("发生异常!"+ex); } } public void CloseDB() { con.Close(); } } }
User类
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Data.SqlClient; namespace 打开数据库 { class User { ConnectionDB bd = new ConnectionDB(); public void login(string StudentNo, string loingPwd) { string sql = "SELECT COUNT(1) FROM Student WHERE StudentNo='" + StudentNo + "' AND Loginpwd='" + loingPwd + "'"; Console.WriteLine(sql); bd.OpenDB(); SqlCommand cmd = new SqlCommand(sql, bd.con); int count = (int)cmd.ExecuteScalar(); if (count > 0) { Console.WriteLine("登录成功!"); } else { Console.WriteLine("登录失败!"); }
}
} }
使用ADO.NET的更多相关文章
- ADO.NET对象的详解
1. Connection 类 和数据库交互,必须连接它.连接帮助指明数据库服务器.数据库名字.用户名.密码,和连接数据库所需要的其它参数.Connection对象会被Command对象使用,这样就能 ...
- WebForm获取GET或者POST参数到实体的转换,ADO.NET数据集自动转换实体
最近在修改维护以前的webform项目(维护别人开发的.....)整个aspx没有用到任何的控件,这个我也比较喜欢不用控件所以在提交信息的时候需要自己手动的去Request.QueryString[] ...
- ADO.NET编程之美----数据访问方式(面向连接与面向无连接)
最近,在学习ADO.NET时,其中提到了数据访问方式:面向连接与面向无连接.于是,百度了一下,发现并没有很好的资料,然而,在学校图书馆中发现一本好书(<ASP.NET MVC5 网站开发之美&g ...
- ADO.NET一小记-select top 参数问题
异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html 最近使用ADO.NET的时候,发现select top @count xxxx 不 ...
- .NET基础拾遗(6)ADO.NET与数据库开发基础
Index : (1)类型语法.内存管理和垃圾回收基础 (2)面向对象的实现和异常的处理 (3)字符串.集合与流 (4)委托.事件.反射与特性 (5)多线程开发基础 (6)ADO.NET与数据库开发基 ...
- 升讯威ADO.NET增强组件(源码):送给喜欢原生ADO.NET的你
目前我们所接触到的许多项目开发,大多数都应用了 ORM 技术来实现与数据库的交互,ORM 虽然有诸多好处,但是在实际工作中,特别是在大型项目开发中,容易发现 ORM 存在一些缺点,在复杂场景下,反而容 ...
- ADO.NET Entity Framework 在哪些场景下使用?
在知乎回答了下,顺手转回来. Enity Framework已经是.NET下最主要的ORM了.而ORM从一个Mapping的概念开始,到现在已经得到了一定的升华,特别是EF等对ORM框架面向对象能力的 ...
- ADO.NET 核心对象简介
ADO.NET是.NET中一组用于和数据源进行交互的面向对象类库,提供了数据访问的高层接口. ADO.NOT类库在System.Data命名空间内,根据我们访问的不同数据库选择命名空间,System. ...
- ODBC、OLE DB、 ADO的区别
转自:http://blog.csdn.net/yinjingjing198808/article/details/7665577 一.ODBC ODBC的由来 1992年Microsoft和Syba ...
- LINQ to SQL语句(19)之ADO.NET与LINQ to SQL
它基于由 ADO.NET 提供程序模型提供的服务.因此,我们可以将 LINQ to SQL 代码与现有的 ADO.Net 应用程序混合在一起,将当前 ADO.NET 解决方案迁移到 LINQ to S ...
随机推荐
- C++STL—map的使用
最近写的一道题用到了STL中的map,这部分内容之前没有系统学过,这里就简单归纳一下吧. 资料来源: https://www.w3cschool.cn/cpp/cpp-fu8l2ppt.html ht ...
- kubernetes--配置文件
- vue动态加载不同的组件(分内部和外部组件)
<!DOCTYPE html> <html> <head> <title> hello world vue </title> <met ...
- Linux基础-7.Linux网络基础设置
装好Linux,Linux一般会默认使用NetworkManager来辅助管理网络配置.对于配置Linux服务器来说,我们不需要NetworkManager来配置网络,所以要关闭它,不然它会影响手动配 ...
- synchronized关键字的使用
synchronized关键字是java并发编程中常使用的同步锁,用于锁住方法或者代码块,锁代码块时可以是synchronized(this){}.synchronized(Object){}.syn ...
- 缓冲区溢出漏洞 ms04011
DSScan使用 扫描目标主机是否存在ms04011漏洞 getos使用 获取操作系统类型 > getos.exe 192.168.1.101 ------------------------- ...
- 使用虹软ArcFac,java 离线SDK 进行人脸识别
公司项目需要人脸识别登录,需要支持离线识别,所以无法使用在线的人脸识别的API,于是使用到了离线SDK来对比识别人脸相识度. 获取人脸抓拍的图片需要对接设备,这里不做记录,假设我们已经获取到了人脸图片 ...
- Hive函数集锦
一.内置运算符 1关系运算符 2.算术运算符 3.逻辑运算符 4.复杂类型函数 5.复杂类型函数应用
- Linux命令——gdisk、fdisk、partprobe
gdisk.fdisk MBR分区表请使用fdisk分区,GPT分区表请使用gdisk分区 MBR与GPT区别参考:Linux磁盘管理——MBR 与 GPT gdisk.gdisk这两个命令参数不需要 ...
- 数据库系统load飙高问题解决思路(转)
工作过程中有时候会接收到数据库服务器器load 飙高的报警,比如: load1 15.25 base: 8.52,collect time:2014-08-30 如何处理load 异常飙高的报警呢? ...