如上图所示界面,当我们点击保存按钮时将会将表格中的数据保存到数据库中去,与数据库进行一个交互

第一步我们就是要获取到表格中的数据

 string pwd = textpwd.Text;           //获得第一次输入密码
string agePqd = txtsurepwd.Text; //获得第二次输入的密码 string name = textname.Text; //获得用户输入的名字
int grendID = Change(); //获得用户输入年级
string phone = textphone.Text; //获得用户输入的电话
string Email = txtEmail.Text; //获得用户输入的Email
DateTime birthday = time.Value; //获得用户输入的出生日期
string gender = string.Empty; //获得用户输入的性别
if (boy.Checked)
{
gender = "";
}
else
{
gender = "";
}

因为性别是单选按钮,所以获取方式如上面的代码

为了严谨性,我们可以在与数据库交互之前先进行一道两次输入密码是否正确的判断

        string pwd = textpwd.Text;           //获得第一次输入密码
string agePqd = txtsurepwd.Text; //获得第二次输入的密码
if (agePqd.Equals(pwd))
{
................
...............
}
else
{
MessageBox.Show("两次输入的密码不一致!", "用户提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
}

如果判断正确,那么我们就可以和数据库进行交互了  和数据库交互的代码如下

string str = "data source=.;initial catalog=MySchool;user ID=sa;";
con = new SqlConnection(str);
con.Open(); string sql = "insert Student values('" + pwd + "','" + name + "','" + gender + "'," + grendID + ",'" + phone + "','" + birthday + "','" + Email + "');select @@identity";
SqlCommand com = new SqlCommand(sql, con);
int count = Convert.ToInt32(com.ExecuteScalar());

以上代码是将数据库通道打开,并且将要执行的Sql语句提交到数据库

添加学生信息完整的代码如下

string pwd = textpwd.Text;           //获得第一次输入密码
string agePqd = txtsurepwd.Text; //获得第二次输入的密码
if (agePqd.Equals(pwd))
{
string name = textname.Text; //获得用户输入的名字
int grendID = Change(); //获得用户输入年级
string phone = textphone.Text; //获得用户输入的电话
string Email = txtEmail.Text; //获得用户输入的Email
DateTime birthday = time.Value; //获得用户输入的出生日期
string gender = string.Empty; //获得用户输入的性别
if (boy.Checked)
{
gender = "";
}
else
{
gender = "";
} SqlConnection con = null; try
{
string str = "data source=.;initial catalog=MySchool;user ID=sa;";
con = new SqlConnection(str);
con.Open(); string sql = "insert Student values('" + pwd + "','" + name + "','" + gender + "'," + grendID + ",'" + phone + "','" + birthday + "','" + Email + "');select @@identity";
SqlCommand com = new SqlCommand(sql, con);
int count = Convert.ToInt32(com.ExecuteScalar());
if (count > )
{ DialogResult result = MessageBox.Show("添加成功!", "用户提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
txtstudentnumber.Text = count.ToString();
if (result == DialogResult.Yes)
{
this.Close();
} }
}
catch (Exception)
{
MessageBox.Show("添加失败!", "用户提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
}
finally
{
if (con != null)
{
con.Close();
}
}
}
else
{
MessageBox.Show("两次输入的密码不一致!", "用户提示", MessageBoxButtons.YesNo, MessageBoxIcon.Information);
}

从C#中通过Windows窗体添加信息到数据库 (添加学生信息)的更多相关文章

  1. .net中关于Windows窗体程序和Web网站程序调用自己的服务

    在.NET Framework 4.0创建服务是中没有像3.5那样的选择新建-网站-ASP.NET Web服务模块,但在4.0中可以选择 新建-网站-ASP.NET空网站-选中项目右键添加新项- 选择 ...

  2. 基于JavaScript的表格设计:按序添加或删除班级的学生信息

    目的: 制作一个表格,显示班级的学生信息 功能: 鼠标移到不同行,背景色发生改变,离开恢复原背景色 添加.删除按钮,可添加,可删除. 程序流程: 首先先建立绑定事件函数. 其次建立鼠标移动改变背景色函 ...

  3. MySQL中查询获取每个班级成绩前三名的学生信息

    CREATE TABLE t_testscore( pk_id INT PRIMARY KEY, c_name VARCHAR(50) , c_score INT, c_class INT )DEFA ...

  4. 基于XML数据库的学生信息管理系统的设计与实现

    本项目是在学习之余写的,主要用来练习MVC+DAO的分层设计思想,项目基于一个简单的XML学生数据库,使用XML作为数据库的原因是其十分的小巧与方便,使用dom4j即可进行方便的解析.因为这段时间课程 ...

  5. 演练:调试 Windows 窗体

    Windows 窗体是最常见的托管应用程序之一. Windows 窗体创建标准的 Windows 应用程序. 你可以完成此演练使用 Visual Basic 中, C#,或 c + +. 首先,您必须 ...

  6. 如何:对 Windows 窗体控件进行线程安全调用

    http://msdn.microsoft.com/zh-cn/library/ms171728(VS.90).aspx http://msdn.microsoft.com/zh-cn/library ...

  7. 在.NET Core 3.0 Preview上使用Windows窗体设计器

    支持使用基于Windows窗体应用程序的.NET Core 3.0(预览)的Windows窗体设计器 介绍 截至撰写本文时,Microsoft和社区目前正在测试.NET Core 3.0.如果您在.N ...

  8. 关于搬运CSDN上学生信息管理系统的阅读与二次开发

    关于本篇博客内容,我大概分成了三个部分进行讲述:对于源代码的解读.二次重开发后程序的介绍和自己在做完对他人代码的解读和重开发后自己的一些感想. 一.  源代码的解读 在本部分的解读中主要分为三部分:该 ...

  9. 学生信息管理系统(c语言)

    ①注意: 程序中使用了sleep()函数.system()函数 关于 sleep() 函数 sleep() 函数的头文件和用法会因环境的不同而有所不同. 具体见-sleep()函数功能及用法 关于sy ...

随机推荐

  1. lua中常量的实现及表的深拷贝实现

    废话:好久没在这里写博客了...主要原因是我买了个域名hanxi.info并在github上搭建了个人博客... lua中默认是没有c中的const常量的,在csdn上找到了一个使用setmetata ...

  2. CSS3学习笔记——伪类hover

    最近看到一篇文章:“Transition.Transform和Animation使用简介及应用展示”    ,想看看里面 “不同缓动类效果demo”例子的效果,发现了一个问题如下: .Trans_Bo ...

  3. 处理XML

    虽然被JSON抢了风头,但XML仍旧非常重要.看得见的,看不见的,XML在很广泛的领域对我们发挥着影响. 修改XML文件,是我经常遇到的事情.方式从手动在Visual Studio或者Notepad+ ...

  4. Oracle存储过程,以逗号分隔字符串传参的处理

    Oracle存储过程,经常会遇见传入的参数是逗号分隔. 处理需要3步: 第一步,创建Type类型 第二部,创建函数 第三部,创建存储过程 代码如下: 第一步: create or replace ty ...

  5. Rxlifecycle(三):坑

    坑1 Observable.just("hello world!") .compose(this.<String>bindUntilEvent(ActivityEven ...

  6. 《Microsoft SQL Server 2008 Internals》读书笔记

    http://www.cnblogs.com/downmoon/archive/2010/01/26/1656411.html

  7. Eclipse中如何修改SVN的地址

    在SVN服务端的IP更改后,客户端SVN的连接地址可以在Eclipse中进行修改,方法如下: 首先:在Eclipse中选择Windows-> Show View->others 就会出现[ ...

  8. bash + script

    shell "" 保留$,`,\, 换行含义,‘’保留字面值 $(), ``用于命令替换 算术扩展如 $[1+1] for循环: for Host in host1, host2, ...

  9. [转载]在Vmware ESXI中安装群晖Synology DSM 5.0 (4528)

    转载 在Vmware ESXI中安装群晖Synology DSM 5.0 (4528) 文件准备 Vmware ESXi用户安装需要的文件 NB_x64_5032_DSM_50-4528_Xpenol ...

  10. xming + putty 搭建远程图形化ssh访问ubuntu 14.04

    putty下载: http://www.putty.org/ 一般我们远程登录linux 服务器,都是使用非加密的 telnet 或者加密的 ssh.这些登录方式有一个特点:只能登录字符界面,不能运行 ...