windows窗体程序中的数据库操作部分

//数据库连接串
internal static string connstring = "Data Source = 192.168.1.1; Initial Catalog = testdb; User ID = test; pwd = 111111;";
//学生登录
using (SqlConnection conn = new SqlConnection(login_mainform.connstring))
{
string sql = "select * from test_student where name=@name and pwd=@pwd";
SqlCommand cmd = new SqlCommand(sql, conn);
cmd.Parameters.Add(new SqlParameter("@name", txtusername.Text));
cmd.Parameters.Add(new SqlParameter("@pwd", txtpassword.Text));
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
Student stu = new Student(); if (reader.Read())
{
stu.Sno = reader[].ToString();
stu.Name = reader[].ToString();
stu.Major = reader[].ToString();
stu.Birthday = reader[].ToString();
stu.Sex = (reader[].ToString())==""?"男":"女"; Information info = new Information(stu); //新窗口对象
info.Show(); //显示学生信息 this.Hide(); //隐藏当前窗口
}
else
{
MessageBox.Show("输入有误");
}
#endregion
}
//修改数据
using (SqlConnection conn = new SqlConnection(login_mainform.connstring))
{
string sql = "update test_student set pwd=@pwd where sno=@sno";
SqlCommand cmd = new SqlCommand(sql,conn);
cmd.Parameters.Add(new SqlParameter("@pwd", txtnewpwd.Text));
cmd.Parameters.Add(new SqlParameter("@sno", txtsno.Text));
conn.Open();
int rows= cmd.ExecuteNonQuery(); if (rows>)
{
MessageBox.Show("密码修改成功,请重新登录");
login_mainform form = new login_mainform(); //登录窗口
form.Show();
this.Close();
}
else MessageBox.Show("存储出错");
}
//连接数据库查询符合查询条件的数据 adapter
using (SqlConnection conn = new SqlConnection(login_mainform.connstring))
{
conn.Open();
String sql =String.Format("select sno,name,sex,birthday,major from test_student where name like '%{0}%' and major like '%{1}%' and sno like '%{2}%'", txtnamequery.Text,cmbmajor.Text,txtsnoquery.Text);
SqlDataAdapter da = new SqlDataAdapter(sql,conn);
DataSet ds = new DataSet();
da.Fill(ds);
}
//更新密码
using (SqlConnection conn = new SqlConnection(login_mainform.connstring))
{
conn.Open();
string sno = dgvstudent.CurrentRow.Cells[].Value.ToString(); String sql = String.Format("update test_student set pwd = '123456' where sno = {0}", sno);
SqlCommand cmd = new SqlCommand(sql, conn);
int rows = cmd.ExecuteNonQuery();
if (rows > )
MessageBox.Show("重置成功。密码:123456");
else return;
}

数据库操作(c#)的更多相关文章

  1. 如何在高并发环境下设计出无锁的数据库操作(Java版本)

    一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...

  2. 【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~

    最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~ ezSQL是一个非常好用的PHP数据库操作类.著名的开源博客WordPress的数据库操作就使用了ezSQL的My ...

  3. MySQL 系列(二) 你不知道的数据库操作

    第一篇:MySQL 系列(一) 生产标准线上环境安装配置案例及棘手问题解决 第二篇:MySQL 系列(二) 你不知道的数据库操作 本章内容: 查看\创建\使用\删除 数据库 用户管理及授权实战 局域网 ...

  4. ABP创建数据库操作步骤

    1 ABP创建数据库操作步骤 1.1 SimpleTaskSystem.Web项目中的Web.config文件修改数据库配置. <add name="Default" pro ...

  5. 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  6. django数据库操作和中间件

    数据库配置 django的数据库相关表配置在models.py文件中,数据库的连接相关信息配置在settings.py中 models.py相关相关参数配置 from django.db import ...

  7. [Android Pro] 完美Android Cursor使用例子(Android数据库操作)

    reference to : http://www.ablanxue.com/prone_10575_1.html 完美 Android Cursor使用例子(Android数据库操作),Androi ...

  8. phpcms v9 中的数据库操作函数

    1.查询 $this->select($where = '', $data = '*', $limit = '', $order = '', $group = '', $key='')   返回 ...

  9. Android打造属于自己的数据库操作类。

    1.概述 开发Android的同学都知道sdk已经为我们提供了一个SQLiteOpenHelper类来创建和管理SQLite数据库,通过写一个子类去继承它,就可以方便的创建.管理数据库.但是当我们需要 ...

  10. python之数据库操作

    数据库操作 Python 操作 Mysql 模块的安装 1 2 3 4 5 linux:     yum install MySQL-python   window:     http://files ...

随机推荐

  1. js的apply和call

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. Java 单向链表学习

    Java 单向链表学习 链表等同于动态的数组:可以不同设定固定的空间,根据需要的内容动态的改变链表的占用空间和动态的数组同一形式:链表的使用可以更加便于操作. 链表的基本结构包括:链表工具类和节点类, ...

  3. oracle12C--DG FAR SYNC 部署(前提为搭建好12C的DG)

    <<往期12CDG搭建>> 一,理解同步异步模式 01, 使用LGWR 进程的SYNC 方式 1)Primary Database 产生的Redo 日志要同时写到日志文件和网络 ...

  4. python-几种快速了解函数及模块功能的方式

    背景 在进行编程的时候经常要导入各种包的各种函数,但是很多包一下又不知道为什么要导入这个模块,所以想总结下有哪些方法可以让我们快速熟悉其中函数的作用. import numpy as np impor ...

  5. (转)expfilt 命令

    expfilt 命令 原文:https://www.ibm.com/support/knowledgecenter/zh/ssw_aix_72/com.ibm.aix.cmds2/expfilt.ht ...

  6. css 清除float的方法

    首先我们要理解这个flaot 为什么要清除,作为小白来说直接颠覆了我之前学的内容,因为之前学的东西虽然碰到float后,脱离文档流后给兄弟元素或者父元素造成影响,但是都是通过option来定位 要么绝 ...

  7. WAMP环境配置-Mysql安装

    1.下载并解压MySQL5.6.36压缩包(顺便重命名一下子). 2.将my-default.ini文件复制一份改名为my.ini,然后修改下面红框标注的地方 3.安装与启动服务. 以管理员的身份运行 ...

  8. flutter initializing gradle终极解决方案

    自己开发的公众号,可以领取淘宝内部优惠券 修改flutter.gradle文件 这种做法网上一大堆的教程,如果你还没改过建议先试下,比如这篇 Flutter 运行 一直Initializing gra ...

  9. node.js压缩和解压缩

    推荐一个极其简单.及其好用的node.js的压缩和解压缩类库  compressing 支持格式: tar.gzip.tgz.zip 以zip为例,tar,tgz和gzip与zip相同. 压缩文件: ...

  10. attribute和property的区别

    DOM元素的attribute和property很容易混倄在一起,分不清楚,两者是不同的东西,但是两者又联系紧密.很多新手朋友,也包括以前的我,经常会搞不清楚. attribute翻译成中文术语为“特 ...