运用.NIT将数据存入数据库、读取数据库(运用封装)陈老师作业
我基础不好,根据所学的知识,书本的例题修改的,也不知道我理解的是否符合老师要求
运用C#将数据存入数据库、并且可以读取数据库里的数据,此项目我运用了封装。我运用了一个窗体将数据存读数据。
我首先创建了一个数据库,库名“数学题库” ,然后创建了一个表“tiku1”,
添加一个类Class1
class Class1
{
public string strCon = @"Data Source=.;Initial Catalog=数学题库;Integrated security=true";
public SqlConnection sqlcon = new SqlConnection();
public SqlDataAdapter sda = new SqlDataAdapter();
public DataSet ds = new DataSet();
public DataTable dt = new DataTable();
public SqlDataReader sdr;
public void suanshu()
{
try
{
sqlcon = new SqlConnection(strCon);
}
catch (Exception e)
{
MessageBox.Show("数据库连接不成功:" + e.ToString());
}
}
public void suanFill(string selstr)
{
dt.Clear();
sda = new SqlDataAdapter(selstr, strCon);
sda.Fill(ds,"tiku1");
dt = ds.Tables["tiku1"];
}
public void suanselect(string showtnfo)
{
sqlcon.Open();
SqlCommand sqlcmd = new SqlCommand(showtnfo, sqlcon);
sdr = sqlcmd.ExecuteReader();
}
public void suanInsert(string insertinfo)
{
sqlcon.Open();
SqlCommand sqlcmd = new SqlCommand(insertinfo, sqlcon);
try
{
sqlcmd.ExecuteNonQuery();
}
catch (Exception e)
{
MessageBox.Show("数据插入失败:" + e.ToString());
}
sqlcon.Close();
}
public void suanGridViewUpd()
{
SqlCommandBuilder scb = new SqlCommandBuilder(sda);
DialogResult result;
result = MessageBox.Show("确定保存修改过的数据吗?", "操作提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (result == DialogResult.OK)
{
dt = ds.Tables["tuku1"];
sda.Update(dt);
dt.AcceptChanges();
}
}
public void suanDelete(string delStr)
{
sqlcon.Open();
SqlCommand sqlcmd = new SqlCommand(delStr, sqlcon);
try
{
sqlcmd.ExecuteNonQuery();
MessageBox.Show("数据删除成功!");
}
catch (Exception ex)
{
MessageBox.Show("数据删除失败" + ex.ToString());
}
sqlcon.Close();
}
}
}
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
string selstr = @"select * from tiku1 ";
Class1 db = new Class1();
private void Form1_Load(object sender, EventArgs e)
{
db.suanshu();
db.suanFill(selstr);
comboBox1.ValueMember = "序号";
comboBox1.DataSource = db.dt.DefaultView;
}
private void button4_Click(object sender, EventArgs e)
{
db.suanshu();
db.suanFill(selstr);
dataGridView1.DataSource = db.dt;
}
private void button1_Click(object sender, EventArgs e)
{
db.suanshu();
string insertinfo = "insert into tiku1(序号,第一个数,符号一,第二个数,符号二,第三个数,符号三,结果) values('" + comboBox1.Text + "','" + textBox1.Text +
"','" + textBox2.Text +
"','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox5.Text + "','" + textBox6.Text +
"','" + textBox7.Text +
"')";
db.suanInsert(insertinfo);
db.suanFill(selstr);
dataGridView1.DataSource = db.dt;
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
string selinfo = "select 第一个数,符号一,第二个数,符号二,第三个数,符号三,结果 from tiku1 where 序号='" + comboBox1.Text.ToString().Trim() + "'";
db.suanshu();
db.suanselect(selinfo);
while (db.sdr.Read())
{
textBox1.Text = db.sdr["第一个数"].ToString();
textBox2.Text = db.sdr["符号一"].ToString();
textBox3.Text = db.sdr["第二个数"].ToString();
textBox4.Text = db.sdr["符号二"].ToString();
textBox5.Text = db.sdr["第三个数"].ToString();
textBox6.Text = db.sdr["符号三"].ToString();
textBox7.Text = db.sdr["结果"].ToString();
}
db.sdr.Close();
}
private void button3_Click(object sender, EventArgs e)
{
db.suanshu();
string strupd = "delete from tiku1 where 序号='" + comboBox1.Text.Trim() + "'";
db.suanDelete(strupd);
db.suanFill(selstr);
dataGridView1.DataSource = db.dt;
}
private void button2_Click(object sender, EventArgs e)
{
db.suanshu();
db.suanGridViewUpd();
}
}
}
说明
每道题我都编辑了序号,可以根据序号选题,改题,(序号我设置了下拉列表)
1、点击查询可以查询数据库里表里数据
2、点击添加可以添加数据
3、删除数据,更新数据
运用.NIT将数据存入数据库、读取数据库(运用封装)陈老师作业的更多相关文章
- 大数据学习day25------spark08-----1. 读取数据库的形式创建DataFrame 2. Parquet格式的数据源 3. Orc格式的数据源 4.spark_sql整合hive 5.在IDEA中编写spark程序(用来操作hive) 6. SQL风格和DSL风格以及RDD的形式计算连续登陆三天的用户
1. 读取数据库的形式创建DataFrame DataFrameFromJDBC object DataFrameFromJDBC { def main(args: Array[String]): U ...
- pyspider爬取数据存入es--2.测试数据库连通性
写一个简单案例测试能否将数据写入es #!/usr/bin/env python # -*- encoding: utf-8 -*- # Created on 2017-10-27 08:35:57 ...
- pyspider爬取数据存入mysql--2.测试数据库能否连通
做一个简单的测试,看数据能否存入mysql 1 #!/usr/bin/env python 2 # -*- encoding: utf-8 -*- 3 # Created on 2017-10-26 ...
- pyspider爬取数据存入redis--2.测试数据库连通性
直接上代码 #!/usr/bin/env python # -*- encoding: utf-8 -*- # Created on 2017-10-27 09:56:50 # Project: re ...
- 解析xml数据存入bean映射到数据库的 需求解决过程
解析xml数据存入bean映射到数据库的 需求解决过程2017年12月19日 15:18:57 守望dfdfdf 阅读数:419 标签: xmlbean 更多个人分类: 工作 问题编辑版权声明:本文为 ...
- 读取数据库数据,并将数据整合成3D饼图在jsp中显示
首先我将生成饼图的方法独立写成一个PieChar.java类,详细代码如下:(数据库需要自己建,如有需要的话) import java.io.IOException; import java.sql. ...
- 10天学会phpWeChat——第三天:从数据库读取数据到视图
在第二天,我们创建了我们的第一个phpWeChat功能模块,但是比较简单.实际生产环境中,我们不可能有如此简单的需求.更多的情况是数据存储在MySql数据库中,我们开发功能模块的作用就是将这些数据从M ...
- 解决:HTML中多文本域(textarea)回车后数据存入数据库,EL表达式取出异常。
问题描述: 当多文本域(textarea)回车后数据存入数据库. EL表达式取出异常,值换行倒置页面报错. 问题解决: 存值脚本代码,提交前转换\n为<br/>. <script t ...
- 编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时会产生Additional information: 阅读器关闭时尝试调用 Read 无效问题,解决方法与解释
在自学杨中科老师的视频教学时,拓展编写SqlHelper使用,在将ExecuteReader方法封装进而读取数据库中的数据时 会产生Additional information: 阅读器关闭时尝试调用 ...
随机推荐
- ERROR 2003: Can't connect to MySQL server on 'localhost' (10061)
解决Can't connect to MySQL server on 'localhost' tomcat连接mysql,大概是c3p0配置和mysql配置都有问题,导致了内存溢出,几天后,mysq ...
- 修改Hosts后对火狐不起作用解决办法
修改Hosts后对火狐不起作用: 重启火狐浏览器仍不起作用的话,执行下面操作即可. FireFox - 选项 - 高级 - 网络 - 立即清除(缓存) 就解决了
- c#中判断对象为空的几种方式(字符串等)
(1)先了解几个与空类型相关的关键字和对象 Null : 关键字表示不引用任何对象的空引用,它是所有引用类型变量的默认值,在2.0版本之前也就只有引用变量类型可以为null,如(string a=n ...
- [leetcode]_Balanced Binary Tree
第四道树题,逐渐能写递归了.虽然最后AC的代码还是看了网络,但是距离成功攻克此类问题仅一步之遥. 题目:一棵树,判断是否为AVL.(AVL条件:树上任意一点的左右子树的高度差<=1) 思路:树依 ...
- K-Means(K均值)算法
昨晚在脑内推导了一晚上的概率公式,没推导出来,今早师姐三言两语说用K-Means解决,太桑心了,昨晚一晚上没睡好. 小笨鸟要努力啊,K-Means,最简单的聚类算法,好好实现一下. 思路: 共有M个样 ...
- 三种找回 linux root密码
找回 linux root密码的三种方法 第1种方法: 1.在系统进入单用户状态,直接用passwd root去更改2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法 ...
- 通过bind实现activity与service的交互
先点bind按钮实现onCreate,在点击start给service传值(get方法) xml: <RelativeLayout xmlns:android="http://sche ...
- BufferedReader,缓冲输入字符流
1. /** * 输入字符流: * --------|Reader 所有输入字符流的基类.抽象类 * -----------|FileReader 读取文件字符串的输入字符流. * --------- ...
- DevExpress GridControl 使用方法技巧 总结 收录整理
一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...
- 第九章 管理类型(In .net4.5) 之 继承机制
1. 概述 本章包括 设计和实现接口.创建和使用基类 以及 使用.net类库提供的标准接口. 2. 主要内容 2.1 设计和实现接口 一个接口包含公共的方法.属性.事件.索引器.类和结构都可以实现接口 ...