关于ADO.NET@SQL Server&SqlDataReader
先说基础的,说基础的明白了再深的也是一样的。SQL是关系型数据库,所以就决定了对其操作的时候ADO的一些类要相互联系,Connection 类Command对象(ExecuteReader()方法、ExecuteScalar()方法和ExecuteNonQuery()方法;插入数据可用ExecuteNonQuery()方法来执行插入命令)DataReader类,DataSet对象,DataAdapter类等等,记住我们需要抓住的是主要的也就是中间的类或者对象,就是Command对象,抓住主要的得了,次要的都要和他发生关系(有点猥琐,嘿嘿),记住你要顶住他,观察其他的类的动作,上例子:
SqlConnection Conn = new SqlConnection(ConfigurationSettings.AppSettings[0].ToString());
string str;
str = "select CarNo,CarCla from CarIn ";
Conn.Open();
SqlCommand datacommand = new SqlCommand(str, Conn);
SqlDataReader reader = datacommand.ExecuteReader();
int i = 0;
while (reader.Read())
{
Console.WriteLine(String.Format("{0}, {1}",
reader[0], reader[1]));
}
看红色部分,都是围绕SqlCommand展开的;
顺便说下SqlDataReader他是读取是一行,如果你想让他把数据都读取的话要用到循环,但是这个不是他的强项。我认为他的强项是读取一行的数据,读取速度快,切记他读取的数据和你str = "select CarNo from CarIn ";这句话有很大的关系,再重复一遍,他是读取一行的数据,另起一行的话,他要重新从[0]开始,所以这个不适合保存或者操作数据(比如你要对读取的一列数据经行操作的话是不可行的,像上面显示还是可以的)而这个数组取决于你选择的相str = "select CarNo,PortNam from CarIn ";这个读取的话就是 read[0]和read[1]。所以这样的话你要对整个数据经行操作的话,很显然这个类不合适了,切记,他只是读取一行,我太啰嗦了。。。。
当然如果你确实想操作这些数据,我们可以以数组的形式读取出来,前提是你必须知道你这个表中有多少行,因为你要设置数组的个数
public string[] getCarNo()
{ int arrayno = getDataNum("CarIn");//获取行数
string[] Carray = new string[arrayno]; str = "select CarNo from CarIn ";
Conn.Open();
SqlCommand datacommand = new SqlCommand(str, Conn);
SqlDataReader reader = datacommand.ExecuteReader();
int i = ;
while (reader.Read())
{
Carray[i] = reader[].ToString();
i++;
}
Conn.Close();
return Carray;
}
关于ADO.NET@SQL Server&SqlDataReader的更多相关文章
- ado连接sql server
//ado连接sql server //头文件加上以下这句. #import "C:\Windows\system\msado15.dll" no_namespace rename ...
- ADO对SQL Server 2008数据库的基础操作
最近在学习ADO与数据库的相关知识,现在我将自己学到的东西整理写出来,也算是对学习的一种复习. 这篇文章主要说明如何遍历某台机器上所有的数据库服务,遍历某个服务中所有的数据库,遍历数据库中的所有表以及 ...
- ODBC与ADO 连SQL Server 2005
ADO是microsoft数据库应用程序开发的连连接口,是建立在OLE DB之上的高层 ADO使用方法步骤: 1.初始化COM库,引入ADO库定义 2.用connection对象连接数据库 3.利用连 ...
- MFC ADO连接Sql Server数据库报无效指针的问题
相关症状: Win7sp1上编译的ADO程序无法在低版本系统上运行,创建ADO时提示错误:0x80004002 解决办法如下: 1.下载: http://download.microsoft.c ...
- SQL Server 数据类型映射 (ADO.NET)
SQL Server 数据类型映射 (ADO.NET) .NET Framework 3.5 更新:November 2007 SQL Server 和 .NET Framework 基于不同的类型系 ...
- 连接SQL SERVER 2008需要加端口号
VC2010 ADO 连接SQL SERVER 2008,127.0.0.1,1433,要加上端口,否则连不上.注意:地址和端口之间使用逗号隔开. 连接SQL SERVER 2000可以不加端口号,使 ...
- 【常见的SQL Server连接失败错误以及解决方法】
[常见的SQL Server连接失败错误以及解决方法] http://blog.csdn.net/feixianxxx/article/details/5523922 ADO连接SQL Server ...
- (4.1)SQL Server Browser 与动态端口
转自:http://blog.51cto.com/jimshu/1120295 一.启用TCP端口 1.启用TCP/IP协议 打开SSCM(SQL Server Configuration Manag ...
- ADO.NET访问SQL Server调用存储过程带回参
1,ADO.NET访问SQL Server调用存储过程带回参 2,DatabaseDesign use northwind go --存储过程1 --插入一条商品 productname=芹菜 un ...
随机推荐
- Oracle数据库之SQL基础(二)
一.约束 ❤ 1.约束概述 约束作用: (1)定义规则 (2)确保完整性:包括数据的精确性.可靠性.以确保数据不会出错,或者尽量减少出错. 约束的类型: (1)非空约束 (2)主键约束 (3)外键约束 ...
- 遍历nsarray
// // main.m // 04-遍历数组 // // Created by apple on 14-3-21. // Copyright (c) 2014年 apple. All rig ...
- Function call process
摘自自博客网址 http://www.cnblogs.com/bangerlee/archive/2012/05/22/2508772.html ax(accumulator): 可用于存放函数返回值 ...
- UIStackView入门
http://www.cocoachina.com/ios/20150623/12233.html
- 数据库性能之--ibatis cache应用
(1)利用cache是提升性能的一个很重要方式!cacheModel节点定义了本映射文件中使用的Cache机制:<cacheModel id="userCache" type ...
- js eventhandler
1.获取所有eventhandler 使用 getEventHandler(target) 2.target.addEventHandler(type,handler,userCapture?) 3. ...
- interesting js
[5/3/2016 4:18 PM] Calos Chen: function a(b,e){var a=0;a+=b;if(e){console.log(b+e);return;} retur ...
- 单片机项目开发中的Muliple Inialliaztion和Mutilple Definition解决:在.c中定义全局变量或者用extern加以声明
c/c++语言中有很多地方要用到extern,但是如果没有真正的了解它的意义,会给编程带来很大的麻烦,为了使大家少走弯路,特祥细的说明一下. 对于比较小的程序,一般只有一个c文件和一个头文件 ...
- CCF真题之最优灌溉
201412-4 问题描述 雷雷承包了很多片麦田,为了灌溉这些麦田,雷雷在第一个麦田挖了一口很深的水井,所有的麦田都从这口井来引水灌溉. 为了灌溉,雷雷需要建立一些水渠,以连接水井和麦田,雷雷也可以利 ...
- Android 封装Dialog
package com.example.myandroid01; import android.support.v7.app.ActionBarActivity; import android.os. ...