Ado.net01
------------恢复内容开始------------
1、ExcuteReader
using System;
using System.Data.SqlClient;
using System.Text; namespace Demo
{ class Program
{ static void Main()
{
// 连接字符串
string connStr = "server=127.0.0.1;uid=sa;pwd=123456;database=Demo";
SqlConnection conn = new SqlConnection(connStr); conn.Open();
Console.WriteLine("连接完成"); using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "select * from [user]";//搜索用户表
using (SqlDataReader reader = cmd.ExecuteReader())//提供一种从 SQL Server 数据库读取行的只进流的方式。此类不能被继承。
{
while (reader.Read())//读取获取结果集里面所有行信息(Read: 如果存在多个行,则为 true;否则为 false。)
{
Console.WriteLine("用户名:{0} id:{1} 年龄:{2} 班级id:{3}", reader.GetString(), reader.GetInt32(), reader.GetInt32(), reader.GetInt32());
}
}
} conn.Close();
Console.ReadLine();
} } }

2、sql注入
这样也登陆成功了

再代码执行完毕后,由于--的原因,代码被注释

解决方法,使用变量:

陷阱:

当参数为0时,会把它看成sqldbtype参数,所以请改用:
AddWithValue
3、dataset(离线的数据集) datatable

using System;
using System.Data;
using System.Data.SqlClient;
using System.Text; namespace Demo
{ class Program
{ static void Main()
{
// 创建一个内存的数据集
DataSet ds = new DataSet("ds1");
// 创建一个内存表
DataTable dt1 = new DataTable("dt1"); //将表放到上面的数据集内
ds.Tables.Add(dt1); // 为表定义一些列
DataColumn dcName = new DataColumn("Name", typeof(string));
DataColumn dcAge = new DataColumn("Age", typeof(int));
DataColumn dcId = new DataColumn("Id", typeof(int)); // 列放进表里
dt1.Columns.AddRange(new DataColumn[] { dcId, dcName, dcAge }); // 给表添加数据
dt1.Rows.Add(, "CCC", );
dt1.Rows.Add(, "5C5C", );
dt1.Rows.Add(, "C6C", ); foreach(DataTable tb in ds.Tables)
{
foreach(DataRow dataRow in tb.Rows)
{
Console.WriteLine(dataRow[] + "--" + dataRow[] + "--" + dataRow[]);
}
}
Console.ReadLine();
} } }
------------恢复内容结束------------
Ado.net01的更多相关文章
- 《2013传智播客视频》-wmv,avi,mp4.目录
\!--14俄罗斯方块\视频\.复习.avi; \!--14俄罗斯方块\视频\ 复习.avi; \!--14俄罗斯方块\视频\ 形状旋转.avi; \!--14俄罗斯方块\视频\ 判断形状能否变形.a ...
- 2013传智播客视频--.ppt,.pptx,.doc,.docx.目录
\!-- JQ03-JQ事件动画\.1版JS+JQ PPT\00JsDom编程01_邹华栋.docx; \!-- JQ03-JQ事件动画\.1版JS+JQ PPT\00JsDom编程01_邹华栋.pp ...
- 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框架面向对象能力的 ...
随机推荐
- MySql 按日期条件查询数据
本周内: select * from wap_content where week(created_at) = week(now) 查询一天: select * from table where to ...
- poj-3658 Artificial Lake(模拟)
http://poj.org/problem?id=3658 Description The oppressively hot summer days have raised the cows' cl ...
- 单调栈and单调队列(此文太多坑了,以后再填)
单调栈 单调栈是一种特殊的栈,特殊之处在于栈内的元素都保持一个单调性,可能为单调递增,也可能为单调递减. 性质: 单调栈里的元素具有单调性 元素加入栈前,会在栈顶端把破坏栈单调性的元素都删除 使用单调 ...
- 三十六、www服务nginx介绍
一.Nginx介绍 ,相对于LAMP经典组合而言,LNMP是近几年来流行的组合.(linux+nginx+mysql+php) Nginx是一个开源www服务软件,是俄罗斯人开发的,本身是一款静态ww ...
- RubyMain2016.2配置自动同步代码到服务器功能
可以参考rubymain帮助文档:https://www.jetbrains.com/help/ruby/deployment-in-rubymine.html 在rubymain工具的Tools&g ...
- Java常用基本类库总结
1.String成员方法 boolean equals(Object obj);//判断字符串的内容是否相同,区分大小写. boolean equalsIgnoreCase(String str);/ ...
- Base64基础知识
转载自百度百科:http://baike.baidu.com/link?url=tI0FbG-ALTTNhRsaQHWXqdVWQDCq4bwd5Xsc0m46M8DKZ5jJyVWnr3IvTprh ...
- Javascript 表达式中连续的 && 和 || 之赋值区别
为了区分赋值表达式中出现的连续的 ‘&&’和 ‘||’的不同的赋值含义,做了一个小测试,代码如下: function write(msg){ for(var i = 0; i ...
- inventor卸载/完美解决安装失败/如何彻底卸载清除干净inventor各种残留注册表和文件的方法
在卸载inventor重装inventor时发现安装失败,提示是已安装inventor或安装失败.这是因为上一次卸载inventor没有清理干净,系统会误认为已经安装inventor了.有的同学是新装 ...
- jenkins配置搭建环境
1.安装及运行 (1)下载 http://updates.jenkins-ci.org/latest/jenkins.war (2)运行 两种运行方式:一种是基于tomcat.Jdk启动,一种是基于D ...