博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#连接数据库
阅读量:7244 次
发布时间:2019-06-29

本文共 3213 字,大约阅读时间需要 10 分钟。

//新加命名空间

using System.Data.SqlClient;
using System.Reflection;
private void Form1_Load(object sender, EventArgs e)
{
    //定义数据内存中缓存,后面填充数据使用
    DataSet ds = new DataSet();
    //定义数据库连接语句:服务器=.(本地) 数据库名=TelephoneMS(手机管理系统)
    string consqlserver = "Data Source=.;Initial Catalog=TelephoneMS;Integrated Security=True;";
    //定义SQL查询语句
    string sql = "select * from Users";
    //定义SQL Server连接对象
    SqlConnection con = new SqlConnection(consqlserver);
//数据库命令和数据库连接
    SqlDataAdapter da = new SqlDataAdapter(sql, con);
    try
    {
        da.Fill(ds);                                    //填充数据
        if (ds.Tables[0].Rows.Count > 0)                //判断是否符合条件的数据记录
        {
            dataGridView1.DataSource = ds.Tables[0];    //获取数据源赋值数据库控件
        }
    }
    catch (Exception msg)
    {
        throw new Exception(msg.ToString());  //异常处理
    }
    finally
    {
        con.Close();                    //关闭连接
        con.Dispose();                  //释放连接
        da.Dispose();                   //释放资源
    }
}

 

数据库中对应的代码和结果如下:       

-------创建数据库:手机销售管理系统(TelePhone management system)--------                     create database TelephoneMS             --创建数据库                     use TelephoneMS --使用数据库 drop database TelephoneMS --删除数据库 ------------------------------------------------------------------- -------------------------建表1 Users(角色表)------------------------ --创建表 create table Users ( username varchar(20) not null, --用户名 userpwd varchar(20) not null, --用户密码 userid varchar(20) not null, --用户编号 userrole varchar(20) not null --用户权限 ) --删除表 drop table Users --清空表中所有数据 truncate table Users --设置主键:username(用户名) alter table Users add constraint pk_users primary key(username) --设置外键:userid(用户编号) alter table Users add constraint fk_users foreign key(userid) references UserInfo (userid) --------------------------------------------------------------------- ----------------------------(试验)插入数据查询-------------------------- insert into Users (username,userpwd,userid,userrole) values('admin','123456','000001','adminst'); insert into Users (username,userpwd,userid,userrole) values('Eastmount','eastmount','000002','manager'); select * from Users ----------------------------------------------------------------------

二.数据库简单登录验证  

在做系统中通常需要对用户名和密码进行简单的登录验证,下面是简单的登录验证知识.运行结果如下:       

       

主要思想是通过判断输入用户名和密码textbox数据在数据库中查询,结果存在即能实现.代码如下:       

//新加命名空间using System.Data.SqlClient;using System.Reflection;//点击"登录"按钮实现数据库验证登录功能private void button1_Click(object sender, EventArgs e) { //字符串赋值:用户名 密码 string username = textBox1.Text.Trim(); string userpwd = textBox2.Text.Trim(); //定义数据库连接语句:服务器=.(本地) 数据库名=TelephoneMS(手机管理系统) string consqlserver = "Data Source=.;Initial Catalog=TelephoneMS;Integrated Security=True;"; //定义SQL查询语句:用户名 密码 string sql = "select * from Users where username='" + username + "' and userpwd='" + userpwd + "'"; //定义SQL Server连接对象 打开数据库 SqlConnection con = new SqlConnection(consqlserver); con.Open(); //定义查询命令:表示对数据库执行一个SQL语句或存储过程 SqlCommand com = new SqlCommand(sql, con); //执行查询:提供一种读取数据库行的方式 SqlDataReader sread = com.ExecuteReader(); try { //如果存在用户名和密码正确数据执行进入系统操作 if (sread.Read()) { MessageBox.Show("登录成功"); } else { MessageBox.Show("请输入正确的用户名和密码"); } } catch (Exception msg) { throw new Exception(msg.ToString()); //处理异常信息 } finally { con.Close(); //关闭连接 con.Dispose(); //释放连接 sread.Dispose(); //释放资源 } }

实际系统中,弹出的界面“登录成功”可以通过下面的代码替换:              

Main Mwind = new Main();    //显示登录主菜单 this.Hide();                //隐藏当前登陆窗体 Mwind.Show(); //显示主登陆窗体

转载地址:http://kaybm.baihongyu.com/

你可能感兴趣的文章
Linux kernel中网络设备的管理
查看>>
反转字符串
查看>>
FusionCharts或其它flash的div图层总是浮在最上层? (转)
查看>>
[Android] Service和IntentService中显示Toast的区别
查看>>
How Tomcat Works(七)
查看>>
烟大 2239: 十进制与八进制的转换(栈和队列)
查看>>
hdu 4681(枚举+dp)
查看>>
Parallel Decision Tree
查看>>
iPhone较为基础的代码片段
查看>>
SED入门
查看>>
使用Unity3D引擎开发赛车游戏
查看>>
Mule消息路由
查看>>
[Asp.Net]状态管理(ViewState、Cookie)
查看>>
马哥 Linux运维基础进阶和shell入门
查看>>
RotateDisp – 一键旋转显示画面 - 小众软件
查看>>
C# Json处理日期和Table
查看>>
addEventListener、attachEvent、cancelBubble兼容性随笔
查看>>
JS编写日历控件(支持单日历 双日历 甚至多日历等)
查看>>
400操作 示例
查看>>
交换机、集线器、路由器区别(转)
查看>>