zoukankan      html  css  js  c++  java
  • 数据库是什么鬼,怎么连接,怎么搞

    数据库,不得不说真是个折磨人的东西。为了学习这个,不得不说,小编出了多少脑油,掉了多少头发,哎,说出来都是眼泪,小心脏也是拔凉拔凉的。我想想,肯定也会有许多的编程员像我这样(初学者),所以小编要把自己的全部技巧教给大家。

    Lady and Gentle,男的女的,都听好了,我要使出浑身解数了,轰隆!!!!

    第一步:既然连接数据库,我们当然要有一个非常绚丽的登录界面。在这里不多做解释,相信大家肯定都会。所以就着重讲解数据库了。

      private void btnLogin_Click(object sender, EventArgs e)
            {
                //验证用户名密码是否和数据库中匹配
                //ADO.NET
                string str = "Data source=.;initial catalog=MySchool;uid=sa;pwd=6375196";
                SqlConnection con = new SqlConnection(str);
                string sql = "select count(1) from student where studentname='" + txtName.Text + "' and loginpwd='" + txtPwd.Text + "'";
                SqlCommand cmd = new SqlCommand(sql, con);
                try
                {
                    con.Open();
                    int count = Convert.ToInt32(cmd.ExecuteScalar());
                    if (count > 0)
                    {
                        //MessageBox.Show("登陆成功");
                        //如何在登陆成功后,显示FrmMain界面
                       
                        //隐藏自己(不为任何人所铭记),显示别人(鲜花和掌声),伟大
                        this.Hide();
                        FrmMain frm = new FrmMain();
                        frm.name = txtName.Text;
                        frm.Show();
                    }
                }
                catch (Exception)
                {
                    MessageBox.Show("脑子有病");//提示用户信息
                }
                finally
                {
                    con.Close();
                }
    
            }
            //Load窗体在被用户肉眼看到前就被执行了
            private void FrmLogin_Load(object sender, EventArgs e)
            {
                
            }
    

    以上就是登录,也就是连接。这样就是登录到数据库。

    插播一条信息!!!  每个用户使用每一个软件肯定都会喜欢一个界面,就是欢迎界面:

            private void FrmMain_Load(object sender, EventArgs e)
            {
                this.IsMdiContainer = true;
                this.Text = this.Text + " 欢迎您" + name;
            }   
    

      

    第二步:我们可以浏览到数据库的内容,然后可以为数据库添加数据咯!

    private void btnEdit_Click(object sender, EventArgs e)
            {
                //添加学生
                string pwd = txtPwd.Text;//密码
                string stuname = txtName.Text;//姓名
                //获取性别
                string stugender = string.Empty;
                if (rbtnMale.Checked)
                {
                    stugender = "1";
                }
                else
                {
                    stugender = "0";
                }
                //如何给下拉框绑定数据
                int gid = GetIdByName();
                //电话
                string stuPhone = txtPhone.Text;
                    
                //地址
                string stuAddress = txtAddress.Text;
                //日期
               DateTime dt= dpBirthday.Value;
                string stuEmail = txtEmail.Text;
                //StudentNo, LoginPwd, StudentName, Gender, GradeId, Phone, Address, Birthday, Email, MyTT
                string sql = "insert into student values('"+pwd+"','"+stuname+"',"+stugender+","+gid+",'"+stuPhone+"','"+stuAddress+"','"+dt+"','"+stuEmail+"')";
                string str = "Data source=.;initial catalog=MySchool;uid=sa;pwd=6375196";
                SqlConnection con=new SqlConnection(str);
                SqlCommand cmd=new SqlCommand(sql,con);
                con.Open();
                int count = cmd.ExecuteNonQuery();
                if (count>0)
                {
                    MessageBox.Show("成功!");
                }
                con.Close();
    
            }
    
            //该方法将年级名称转换成年级编号
            public int GetIdByName()
            {
            string str = "Data source=.;initial catalog=MySchool;uid=sa;pwd=6375196";
            SqlConnection con = new SqlConnection(str);
            string sql = "select gradeid from grade where gradename='"+cboGrade.Text+"'";
            SqlCommand cmd = new SqlCommand(sql, con);
                int gid = 0;
                try
                {
                    con.Open();
                    gid =Convert.ToInt32(cmd.ExecuteScalar());
                }
                catch (Exception)
                {
    
                    MessageBox.Show("网络异常");
                }
                finally
                {
                    con.Close();
                }
                return gid;
            }
    
    
            private void FrmAddStudent_Load(object sender, EventArgs e)
            {
                //拿到所有年级名称
                string str = "Data source=.;initial catalog=MySchool;uid=sa;pwd=6375196";
                SqlConnection con = new SqlConnection(str);
                string sql = "select gradename from grade";
                SqlCommand cmd = new SqlCommand(sql, con);
                try
                {
                    con.Open();
                   SqlDataReader dr= cmd.ExecuteReader();
                    if (dr!=null)
                    {
                        if (dr.HasRows)
                        {
                            while (dr.Read())
                            {
                                string gname = dr["gradename"].ToString();
                                //每读到一个年级名称,我就将"S1",添加到下拉框
                                cboGrade.Items.Add(gname);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("网络异常");
                }
                finally
                {
                    con.Close();
                }
            }
    

      

    第三步:我们可以添加学生到数据库就可以搜寻某一条数据拉~

     public FrmSearchByName()
            {
                InitializeComponent();
            }
            //加载DB中的数据到ListView中
            public void LoadDataFromDBToListView(string sql)
            {
                string str = "data source=.;initial catalog=MySchool;uid=sa;pwd=6375196;";
                SqlConnection con = new SqlConnection(str);
                
                SqlCommand cmd = new SqlCommand(sql, con);
                try
                {
                    con.Open();//2分
                    SqlDataReader dr = cmd.ExecuteReader();
                    if (dr != null)
                    {
                        if (dr.HasRows)
                        {
                            while (dr.Read())
                            {
                                //每从DB中读取出一条数据,需要形成一个ListViewItem对象,代表的是ListView中的一行
                                int stuNo = Convert.ToInt32(dr["studentno"]);
                                //第二列 stuname
                                string stuName = Convert.ToString(dr["studentname"]);
                                //第三列  性别
                                string stugender = Convert.ToString(dr["gender"]);
                                //年级名称
                                string gname = Convert.ToString(dr["gradename"]);
                                ListViewItem lvItem = new ListViewItem(stuNo.ToString());
                                lvItem.SubItems.Add(stuName);
                                lvItem.SubItems.Add(stugender);
                                lvItem.SubItems.Add(gname);
                                //让lvItem和ListView关联
    
                                lvStuList.Items.Add(lvItem);
    
                            }
                            dr.Close();//-2分
                        }
                    }
                }
                catch (Exception)
                {
    
                    throw;
                }
                finally
                {
                    con.Close();//2分
    
                }
            }
    
            private void FrmSearchByName_Load(object sender, EventArgs e)
            {
                string sql = @"select Studentno,Studentname,Gender,gradename
                                from student,grade
                                where student.gradeid=grade.gradeid
                                ";
                LoadDataFromDBToListView(sql);
            }
    
            private void btnSearch_Click(object sender, EventArgs e)
            {
                //查询数据前,清空LIstView中的数据
                lvStuList.Items.Clear();
                string sql = @"select Studentno,Studentname,Gender,gradename
                                from student,grade
                                where student.gradeid=grade.gradeid and studentname like '%"+txtStudentName.Text+"%' ";
                LoadDataFromDBToListView(sql);
            }
        }
    }
    

      

    插播一条!!! 部分的软件会有要求输入生日,什么日期什么的,那么怎么获取呢?

      //获取日历控件的value值
                MessageBox.Show(dateTimePicker1.Value.ToShortDateString());
                if (rboMale.Checked)
                {
                  //给文本框赋值为男
                   txtResult.Text = "男";
                }else if (rboFeMale.Checked)
                {
                    //女
                    txtResult.Text = "女";
                }
                else
                {
                    //春哥,开玩笑了
                  txtResult.Text = "春哥";
                }
    

    学习到这里部分的功能就介绍完了,可能大家看完了还会迷迷糊糊,这就对了,好东西都要参悟参悟在参悟的,怎么会被一下就明白,大家要多思考哦 

  • 相关阅读:
    yum 下载安装包以及依赖包
    《将博客搬至CSDN》
    Lucene
    Solr
    LVS原理详解(3种工作模式及8种调度算法)
    正向代理与反向代理
    网关,网卡
    NAT地址转换
    Nginx学习总结
    网络_OSI模型_数据包传输
  • 原文地址:https://www.cnblogs.com/ay-nzz/p/ay_wzz.html
Copyright © 2011-2022 走看看