C#使用DataSet类、DataTable类、DataRow类、OleDbConnection类、OleDbDataAdapter类编写简单数据库应用

摘要:
//注意:请使用VS2010打开以下源代码。“);}else if{throw newException(“ID代码不能少于6位!”);}//检查是否存在具有重复ID代码的for{if{thrownewException(“已存在”+textBox1.Text.Trim()+“,不要再添加它!”);}}//添加操作DataRow=table。NewRow();row[“ID”]=textBox1.Text。修剪();row[“Name”]=textBox2.Text。修剪();row[“Age”]=组合框1.Text;如果{row[“性别”]=“男性”;}否则{row[“性别”]=“女性”;}表格.行。添加命令使现代化dataGridView1.DataSource=table;}捕获{MessageBox.Show;}}privatevoidbutton3_如果{throws new Exception(“Nothing cannot be deleted!
//注意:请使用VS2010打开以下的源代码。
//源代码地址:http://pan.baidu.com/s/1j9WVR
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication22
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        OleDbConnection connection;
        OleDbDataAdapter command;
        DataSet dataSet;
        DataTable table;

        OleDbCommandBuilder builder;

        private void Form1_Load(object sender, EventArgs e)
        {
            //增加年龄数据(1~100)
            List<string> AgeList = new List<string>();
            for (int i = 0; i < 100; i++)
            {
                AgeList.Add((i + 1).ToString());
            }
            string [] AgeArray = AgeList.ToArray();
            comboBox1.Items.AddRange(AgeArray);
            comboBox1.Text = "20";

            //查找数据库
            connection = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Info.mdb;");
            command = new OleDbDataAdapter("Select * From Information", connection);
            dataSet = new DataSet("Info");
            command.Fill(dataSet, "Information");

            builder = new OleDbCommandBuilder(command);

            //显示数据库
            table = dataSet.Tables["Information"];
            dataGridView1.DataSource = table;
        }

        private void textBox1_TextChanged(object sender, EventArgs e)
        {
            char[] tempChars = textBox1.Text.Trim().ToArray();
            List<char> validChars= new List<char>();

            for (int i=0;i<tempChars.Length;i++)
            {
                if(!char.IsNumber(tempChars[i]))
                {
                    tempChars=validChars.ToArray();
                    textBox1.Text = new string(tempChars);
                    textBox1.SelectionStart = textBox1.Text.Length;
                    break;
                }
                else
                {
                    validChars.Add(tempChars[i]);
                }
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                if (textBox1.Text.Trim() == "")
                {
                    throw new Exception("身份识别码不能空!");
                }
                else if(textBox1.Text.Trim().Length<6)
                {
                    throw new Exception("身份识别码不能小于6位!");
                }

                //检查是否有身份识别码重复的
                for (int i = 0; i < table.Rows.Count; i++)
                {
                    if ((string)table.Rows[i]["ID"] == textBox1.Text.Trim())
                    {
                        throw new Exception("已经存在" + textBox1.Text.Trim() + ",请勿重复添加!");
                    }
                }

                //添加操作
                DataRow row = table.NewRow();
                row["ID"] = textBox1.Text.Trim();
                row["Name"] = textBox2.Text.Trim();
                row["Age"] = comboBox1.Text;
                if (radioButton1.Checked == true)
                {
                    row["Gender"] = "";
                }
                else
                {
                    row["Gender"] = "";
                }
                table.Rows.Add(row);


                command.Update(dataSet, "Information");
                dataGridView1.DataSource = table;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }

        private void button3_Click(object sender, EventArgs e)
        {
            try
            {
                //删除操作
                if (dataGridView1.CurrentCell == null)
                {
                    throw new Exception("无任何内容可删!");
                }

                if (dataGridView1.CurrentCell.RowIndex != -1)
                {
                    table.Rows[dataGridView1.CurrentCell.RowIndex].Delete();
                }
                else
                {
                    throw new Exception("未在表格内选择任一个单元格!");
                }

                command.Update(dataSet, "Information");
                dataGridView1.DataSource = table;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }

        }

        private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            //表格上的内容填至相应的文本框等控件
            textBox1.Text =(string) dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells["ID"].Value;
            textBox2.Text = (string)dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells["Name"].Value;
            comboBox1.Text=(dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells["Age"].Value).ToString();
            if ((string)dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells["Gender"].Value == "")
            {
                radioButton1.Checked = true;
            }
            else
            {
                radioButton2.Checked = true;
            }
        }

        private void textBox1_MouseClick(object sender, MouseEventArgs e)
        {
            textBox1.SelectAll();
        }

        private void textBox2_MouseClick(object sender, MouseEventArgs e)
        {
            textBox2.SelectAll();
        }

    }
}

运行结果:
C#使用DataSet类、DataTable类、DataRow类、OleDbConnection类、OleDbDataAdapter类编写简单数据库应用第1张

免责声明:文章转载自《C#使用DataSet类、DataTable类、DataRow类、OleDbConnection类、OleDbDataAdapter类编写简单数据库应用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【最新揭秘】百度快收权限如何获得,教你一周快速获得快收权限前端开发中常遇到的浏览器兼容问题小结下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

redis实现二级缓存

Mybatis也会做缓存,也会有一级缓存和二级缓存:一级缓存:是SqlSession级别的缓存,使用HashMap数据结构来用于存储缓存数据的二级缓存:是mapper级别的缓存,其作用域是mapper的同一个namespace,不同的SqlSession执行两次相同namespace下的sql语句,并且传递的参数相同,返回的结果也相同时,第一次执行sql语句...

甲骨文ARM架构云服务器部署宝塔+.net 5.0

前言前段时间,甲骨文推出了一款采用ARM架构的免费服务器,可以申请永久免费的4核、24GB内存、4G带宽,非常棒。然而,由于ARM架构的CPU。例如,编译和安装MySQL 5.7是可以的,所以不需要麻烦。创建后,ssh被连接并切换到根帐户sudo-i II。安装宝塔。创建服务器。更新包并安装BBR后,您可以使用官方脚本yu_install-wget&...

全网最详细的最新稳定OSSEC搭建部署(ossec-server(CentOS7.X)和ossec-agent(CentOS7.X))(图文详解)

OSSEC是一款开源的基于主机的入侵检测系统,可以简称为HIDS。它具备日志分析,文件完整性检查,策略监控,rootkit检测,实时报警以及联动响应等功能。详细的介绍和文档可以参考官网网站:http://www.ossec.net/环境本文中的环境极其简单,两台CentOS7虚拟机。CentOS7的安装详解服务端:  计算机名:ossec-server  I...

解决微信公众平台接口配置信息配置失败问题

填写完URL和TOKEN后,当您单击“提交”时,系统将始终提示您“配置失败”或其他错误,以确认URL所指向的后台页面代码是否正常。请确认TOKEN配置是否正常。此时,请检查INDEX页面的编码格式,并将其更改为GB2312进行尝试,这可能会解决您的问题。我想把这篇文章献给我浮躁的自己。...

docker.service启动失败:Unit not found的原因及解决办法

解决方案是删除/usr/lib/systemd/system/docker.service的[UNIT]中包含的dockersocket,然后重新加载systemctldaemon,最后是systemctlstartdocker.service。启动成功。在类似的情况下,docker.socket缺失,但新版本需要docker.seocket。这是因为Fla...

Activiti-个人任务

1.分配任务所有者1.1固定分配在业务流程建模期间指定固定任务所有者;在properties视图中,填写Assignee项作为任务所有者;注:通过固定分配方法,任务是逐步执行的,任务负责人将根据bpmn的配置分配给每个任务;1.2表达式分配1.2.1 UEL表达式Activiti使用UEL表达式,UEL是javaEE6...