WinForm和数据库的连接
有几天没有写东西,今天来写点关于数据库的东西。
第一步:现在你自己的SQL Server数据库中创建一个新的数据库test,然后在里面新建一张表tb_user,在这张表中添加几个字段并为它赋值,具体结果看下图。
第二步:在Visual studio 2010中新建一个Windows窗体程序。然后下图一样进行布局。
添加一个DataGridView控件和三个Button控件。然后为DataGridView控件绑定数据库
点击红色方框汇中的添加项目数据源链接进行操作就可以了。
一直“下一步”下去,然后新建连接就可以了。基本上不用修改什么东西。
然后选择你刚刚创建的那个表tb_user
这样,DataGridView控件的绑定数据库就好了。
第三步:可以为这个控件修改Name;查询的Name修改为btnSearch,关闭的Name修改为btnClose,清除的Name修改为btnReset
第四步:添加代码就OK了
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace UserDemo
{
public partial class FrmUserDemo : Form
{
string ConnectionString = "server=SYSADMIN-PC;database=test;uid=sa;pwd=root;";
string QueryString = "Select id,username,password,isCheck from tb_user";
DataSet dsUser;
public FrmUserDemo()
{
InitializeComponent();
dsUser = null;
} private void Form1_Load(object sender, EventArgs e)
{
// TODO: 这行代码将数据加载到表“testDataSet.tb_user”中。您可以根据需要移动或删除它。
this.tb_userTableAdapter.Fill(this.testDataSet.tb_user); }
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnSearch_Click(object sender, EventArgs e)
{
dsUser = QueryUser();
this.dataGridView1.DataSource=dsUser.Tables["tb_user"];
}
/// <summary>
/// 跟数据库连接并将数据保存到本地
/// </summary>
/// <returns></returns>
private DataSet QueryUser()
{
SqlConnection myConnection = new SqlConnection(ConnectionString);
SqlCommand myCommand = myConnection.CreateCommand();
myCommand.CommandText = QueryString;
SqlDataAdapter myAdapter = new SqlDataAdapter();
myAdapter.SelectCommand = myCommand;
DataSet myDataSet = new DataSet();
myConnection.Open();
myAdapter.Fill(myDataSet, "tb_user");
myConnection.Close();
return myDataSet;
}
/// <summary>
/// 关闭
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
/// <summary>
/// 清除,将正在显示的数据清除掉
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnReset_Click(object sender, EventArgs e)
{
dsUser = null;
this.dataGridView1.DataSource = null;
this.dataGridView1.Refresh();
}
}
}
第五步:结果显示
OK,到此就大功告成了。
WinForm和数据库的连接的更多相关文章
- T-SQL 关闭数据库所有连接
原文引用自: http://www.cnblogs.com/kissazi2/p/3462202.html 下面给出一种删除数据库活动连接的方式.将下面代码段中的"--修改一下"处 ...
- php判断数据库是否连接成功的测试例子
php判断数据库是否连接成功的测试例子 如果出现数据库配置不正确的错误,请看php与mysql的配置教程: win7系统下如何配置php-Apache-mysql环境 http://www.cnblo ...
- java中与数据库的连接
package unitl01; import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet; ...
- jsp与数据库的连接
经过一段时间的学习与上网查资料,我已经成功的用java语言连接上了数据库, 本以为同理jsp跟数据库的连接肯定水到渠成的,但是在经过尝试很多次后我发现现实永远是骨感的,最终结果是花了一个下午的时间去建 ...
- 数据库最大连接池max pool size
本文导读:Max Pool Size如果未设置则默认为100,理论最大值为32767.最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影 ...
- jsp_数据库的连接
一.添加数据库以及表 在这里我们使用的是mysql数据库 二.配置数据库的驱动程序 将mysql的驱动程序复制到Tomcat目录下的lib目录中 注:在Tomcat中如果配置了新的jar包,则配置完成 ...
- [转]Hibernate不能自动建表解决办法及Hibernate不同数据库的连接及SQL方言
最近开始学Hibernate,看的是李刚的那本<轻量级java ee企业应用实战>.头一个hibernate程序,我原原本本的按照书上例子写下来,同时只是改动了些mysql的连接参数,并且 ...
- MVC模式(Model View Controller)下实现数据库的连接,对数据的删,查操作
MVC模式(Model View Controller): Model:DAO模型 View:JSP 在页面上填写java代码实现显示 Controller:Servlet 重定向和请求的转发: 若 ...
- MVC设计模式下实现数据库的连接,并获取所有数据到浏览器页面上显示
实现建立一个学生的java类:里面封装了属性的全部属性: public class Student { private int id; private String username; private ...
随机推荐
- C++对象的内存模型
1. 普通对象模型 对象是如何在内存中布局的? 成员 存放位置 访问范围 非静态数据成员 每一个对象体内 为该对象专有 静态数据成员 程序的静态存储区内,只有一份实体 为该类所有对象共享 成员函数(静 ...
- js消息框
<script> function del(obj, id) { layer.confirm('是否要删除信息!', { btn: ['确定', '取消'] }, function (in ...
- The remote certificate is invalid according to the validation procedure 远程证书验证无效
The remote certificate is invalid according to the validation procedure 根据验证过程中远程证书无效 I'm calling ...
- 【转载】Jsp页面传Json数据到服务端,转对象或集合进行数据处理
需求:1.将页面数据带到服务端并转成对象,2.将页面的集合数据带到服务端转List实现:用ajax请求传递数据,数据格式为json JS方法: testJsonMethod = function(){ ...
- 15.id生成的两种方式
- NLTK学习笔记(五):分类和标注词汇
目录 词性标注器 标注语料库 表示已经标注的标识符:nltk.tag.str2tuple('word/类型') 读取已经标注的语料库 名词.动词.形容词等 尝试找出每个名词类型中最频繁的名词 探索已经 ...
- Vue packages version mismatch
开发过程中,之前做的vue项目,一段时间后拿出来重新运行,报错: 打开vue-template-compiler/index.js查看错误提示,如下: 当安装的vue版本和package.json中的 ...
- (18)使用模板(thymeleaf-freemarker)【从零开始学Spring Boot】
整体步骤: (1) 在pom.xml中引入thymeleaf; (2) 如何关闭thymeleaf缓存 (3) 编写模板文件.html ...
- 转载 - C++ bitset类使用与简介
出处:http://blog.163.com/lixiangqiu_9202/blog/static/53575037201251121331412/ C++ bitset类的使用与简介 有些程序 ...
- C#--委托的同步,异步,回调函数
原文地址 同步调用 委托的Invoke方法用来进行同步调用.同步调用也可以叫阻塞调用,它将阻塞当前线程,然后执行调用,调用完毕后再继续向下进行. using System; using System. ...