关于数据库中datareader的用法

1.C#中提供的DataReader可以从数据库中每次提取一条数据。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsApplication4
{
    publicpartial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
       
        //定义链接
        OleDbConnection conn;
        //定义命令
        OleDbCommand cmd;
        //定义datareader
        OleDbDataReader myreader;
        //定义两个变量用来存储数据库链接字符串和命令字符串
        string connstr, selectcmd;
        private void button1_Click(object sender, EventArgs e)
        {
            connstr = "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=db.mdb";
            selectcmd = "select * from yonghu where username=‘" + textBox1.Text+ "‘ and password=‘" + textBox2.Text + "‘";
            //实例化链接并打开
            conn = new OleDbConnection(connstr);
            conn.Open();
            //实例化cmd并制定执行语句与执行链接
            cmd = new OleDbCommand(selectcmd, conn);
            //执行查询命令并赋给datareader
            myreader = cmd.ExecuteReader();
           
            if (myreader.Read())
            {
                //myreader中有数据,表示给出的用户名和密码在数据库中有匹配记录
                MessageBox.Show("登录成功");
                //如果登录成功则取出用户名和等级填入下面的文本框中
                textBox3.Text = myreader["username"].ToString();
                textBox4.Text = myreader["level"].ToString();
            }
            else
            {
                //myreader中没有数据,表示给出的用户名和密码至少有一个是错的
                MessageBox.Show("登录失败!!");
            }
            myreader.Close();
            conn.Close();
           
        }

private void button2_Click(object sender, EventArgs e)
        {
            Application.Exit();
        }
    }
}

转载:http://blog.sina.com.cn/s/blog_4ae95c270101ltnv.html

时间: 2024-10-08 05:11:51

关于数据库中datareader的用法的相关文章

【转】Oracle数据库中Sequence的用法

在Oracle数据库中,sequence等同于序列号,每次取的时候sequence会自动增加,一般会作用于需要按序列号排序的地方. 1.Create Sequence (注释:你需要有CREATE SEQUENCE或CREATE ANY SEQUENCE权限) CREATE SEQUENCE emp_sequence INCREMENT BY 1 —— 每次加几个 START WITH 1 —— 从1开始计数 NOMAXVALUE —— 不设置最大值 NOCYCLE —— 一直累加,不循环 CA

sql server数据库中 INFORMATION_SCHEMA的用法

1.查询数据库的所有表: select * from INFORMATION_SCHEMA.TABLES 2.查询表名为xxx的所有列的信息 select * from INFORMATION_SCHEMA.COLUMNS where TABLE_NAME='Area'

Mongodb数据库中mongostat工具用法

mongostat是mongoDB自带的工具,用于检测mongodb的运行状态. Test:Test/node-131 / # mongostat --helpUsage:mongostat <options> <polling interval in seconds> Monitor basic MongoDB server statistics. See http://docs.mongodb.org/manual/reference/program/mongostat/ fo

数据库中的null用法

原文地址:https://www.cnblogs.com/Koma-vv/p/9672109.html

各个数据库中top 的表示方法

Select Top在不同数据库中的使用用法: 1. Oracle数据库 SELECT * FROM TABLE1 WHERE ROWNUM<=N 2. Infomix数据库 SELECT FIRST N * FROM TABLE1 3. DB2数据库 SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<=N 或者 SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ON

讲解七种数据库中Select Top的使用方法

Select Top在不同数据库中的使用用法: 1. Oracle数据库 SELECT * FROM TABLE1 WHERE ROWNUM<=N2. Infomix数据库 SELECT FIRST N * FROM TABLE13. DB2数据库 SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM<=N或者 SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY4

sql server数据库中raiserror函数的用法

server数据库中raiserror的作用就和asp.NET中的throw new Exception一样,用于抛出一个异常或错误.这个错误可以被程序捕捉到. raiserror的常用格式如下:raiserror('错误的描述',错误的严重级别代码,错误的标识,错误的描述中的参数的值(这个可以是多个),一些其它参数),在官方上的格式描述如下: RAISERROR ( { msg_id | msg_str | @local_variable } { ,severity ,state } [ ,a

Oracle数据库中序列(SEQUENCE)的用法详解

在Oracle数据库中,序列的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值.本文我们主要介绍了序列的用法,希望能够对您有所帮助. AD: 在Oracle数据库中,什么是序列呢?它的用途是什么?序列(SEQUENCE)其实是序列号生成器,可以为表中的行自动生成序列号,产生一组等间隔的数值(类型为数字).其主要的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值. 创建序列需要CREATE SEQUENCE系统权限

C#中操作数据库技术之ExecuteNonQuery用法

最近在补基础知识,刚好补到C#中对数据库操作的一些技术,今天学习了ExecuteNonQuery的东西,看自己项目维护项目的代码和网上资料查询,基本上搞懂了ExecuteNonQuery的用法,小小的做个总结,供以后查阅. ExecuteNonQuery方法主要用来更新数据,当然也可以用来执行目标操作(例如查询数据库的结构或者创建诸如表等的数据库对象).通常用它来执行insert.update.delete语句,在不使用Dataset的情况下更改数据库中的数据.select语句不适合Execut