zoukankan      html  css  js  c++  java
  • C#连接数据库

    //新加命名空间
    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();               //显示主登陆窗体
  • 相关阅读:
    git命令log与reflog的比较
    git基础仓库提交到新仓库,保存老仓库历史,并同步老仓库跟新到新仓库中
    classpath*与classpath
    fastjson将对象和json互转,@JSONField的使用及不生效
    feign接口自动生成工具
    IIS .Net Core 413错误和Request body too large解决办法
    thinphp 上传文件到七牛
    php 整合微信、支付宝扫码付款
    Jenkins:整合SonarQube8
    Jenkins:流水线打包运行boot项目
  • 原文地址:https://www.cnblogs.com/rosesmall/p/7850653.html
Copyright © 2011-2022 走看看