唯勤机试题笔试题

1.登陆页面代码

        private void button1_Click(object sender, EventArgs e)
        {
            string username = textBox1.Text;
            string pwd = textBox2.Text;
            string connStr = "server=.服务器名;uid=用户名;pwd=123456;database=wq";//数据库连接字符串
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = string.Format("select UserPwd from weiqin where UserName='{0}'", username);
                conn.Open();
                SqlCommand cmd = new SqlCommand();//sql语句执行对象
                cmd.Connection = conn;//执行的数据库为conn
                cmd.CommandText = sql;//执行的语句是sql
                SqlDataReader dr = cmd.ExecuteReader();//读到的userpwd流,返回给dr
                if (dr.Read())
                {
                    if (pwd.Equals(dr[0].ToString()))//比较两个对象是否相等,FALSE true
                    {
                        Form2 m = new Form2();
                        if (m.ShowDialog() == DialogResult.OK)//打开From2窗体
                        {
                            m.Show();
                        }
                    }
                    else
                        MessageBox.Show("登陆失败");
                }
            }
        }

2.主页代码

 public Form2()
        {
            InitializeComponent();
            GetUser();
        }
        /// <summary>
        /// 显示数据
        /// </summary>
        public void GetUser()
        {
            string connStr = "server=. ;uid= ;pwd= ;database= ";
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = "select * from weiqin";
                SqlDataAdapter da = new SqlDataAdapter(sql, conn);//执行打开数据库,执行sql语句,
                DataSet ds = new DataSet();//程序集
                da.Fill(ds, "weiqin");//用da填充ds
                dataGridView1.DataSource = ds.Tables[0];//把数据绑定到data

            }
        }
        //新增修改一个窗体
        private void button1_Click(object sender, EventArgs e)
        {
            //单击弹出窗体
            Form3 add = new Form3();
            add.Text = "新增成功";
            if (add.ShowDialog() == DialogResult.OK)
            {
                //重新显示数据
                GetUser();
            }

        }

        private void button2_Click(object sender, EventArgs e)
        {
            string username=dataGridView1[1,dataGridView1.CurrentCell.ColumnIndex].Value.ToString();
            Form3 Add=new Form3(username);
            Add.Text = "信息修改";
            //当au=false时为修改
            Add.au = false;
            if (Add.ShowDialog() == DialogResult.OK)
            {
                GetUser();
            }
           
        }

        private void button3_Click(object sender, EventArgs e)
        {
            string connStr = "server=.;uid=登录名;pwd=密码;database=数据库";
            //鼠标单击每行中的第一个单元格的对象,返回一个username admin
            string username=dataGridView1[1,dataGridView1.CurrentCell.ColumnIndex].Value.ToString();
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                string sql = string.Format("delete weiqin where UserName='{0}'",username);
                conn.Open();
                SqlCommand cmd = new SqlCommand();
                cmd.Connection = conn;
                cmd.CommandText = sql;
                int k = cmd.ExecuteNonQuery();//返回受影响的行数
                if (k > 0)
                {
                    MessageBox.Show("删除成功");
                    GetUser();
                }
                else
                {
                    MessageBox.Show("删除失败");
                    return;
                }

            }
        }

3.新增页面代码

 public Form3()
        {
            InitializeComponent();
        }
        string connStr = "server=.;uid= ;pwd= ;database=";
        //au=true是为新增功能,au=false 为修改功能
        public bool au = true;
        public string name;
        //构造函数 初始化
        public Form3(string username)
        {
             InitializeComponent();
             this.name=username;
             oneUser();
        }
        //初始化修改窗体
        /// <summary>
        /// 根据用户名获取数据,读出后显示在文本框,按位置
        /// </summary>
        public void oneUser()
        {
            using(SqlConnection conn=new SqlConnection(connStr))
            {
                string sql=string.Format("select UserName,UserPwd from weiqin where UserName='{0}'",name);
                conn.Open();
                SqlCommand cmd=new SqlCommand();
                cmd.Connection=conn;
                cmd.CommandText=sql;
                SqlDataReader dr=cmd.ExecuteReader();
                if(dr.Read())
                {
                    textBox1.Text=dr[0].ToString();
                    textBox2.Text=dr[1].ToString();
                    textBox1.Enabled=false;
                }
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string username=textBox1.Text;
            string pwd=textBox2.Text;
            //新增功能
            if(au==true)
            {
                using(SqlConnection conn=new SqlConnection(connStr))
                {
                    string sql=string.Format("insert into weiqin(UserName,UserPwd) value('{0}','{1}')",username,pwd);
                    conn.Open();
                    SqlCommand cmd=new SqlCommand();
                    cmd.Connection=conn;
                    cmd.CommandText=sql;
                    int k=cmd.ExecuteNonQuery();
                    if(k>0)
                    {
                        MessageBox.Show("新增成功");
                        DialogResult=DialogResult.OK;
                    }
                    else
                    {
                        MessageBox.Show("新增失败");
                        return;
                    }
                }
            }
            ///修改功能
            else
            {
                string connStr="server=.;uid=se;pwd=123456;database=weiqin";
                using(SqlConnection conn=new SqlConnection(connStr))
                {
                    string sql=string.Format("updata weiqin set UserPwd='{0}' where UserName='{1}'",pwd,username);
                    conn.Open();
                    SqlCommand cmd=new SqlCommand();
                    cmd.Connection=conn;
                    cmd.CommandText=sql;
                    int k=cmd.ExecuteNonQuery();
                    if(k>0)
                    {
                        MessageBox.Show("修改成功");
                        DialogResult=DialogResult.OK;
                    }
                    else
                    {
                        MessageBox.Show("修改失败");
                        return;
                    }
                }
            }
        }

1.String s;和String s=null;和String s=“”;有什么区别? 答:针对这三种情况,使用out.println(s);的时候,第一个会出现异常,第二个会出现null;第三个会输出空 第一个只是定义啦一个String类型变量s,并没有给它赋初始值,在程序设计时,默认在使用一个变量的时候必须赋予它初值(降低风险); 2.类和结构的差别 1.值类型与引用类型 结构是值类型:值类型在堆栈上分配地址,所有的基类都是结构类型,例如int对应system.int32结构,string对应system.string结构,通过使用结构类型可以创建更多的值类型。 类是引用类型:引用类型在堆上分配地址。 堆栈的执行效率高,可是堆栈的资源有限,不适合处理大的逻辑复杂的对象。所以结构处理作为基类对待的小对象,而类处理某个商业逻辑。 因为结构是值类型所以结构之间的赋值可以创建新的结构,而类时引用类型,类之间的赋值只是赋值引用, 注: 1.虽然结构与类的类型不一样,可是他们的基类都是对象(object),c#中所有的类型都是object 2.虽然结构的初始化也是用啦New操作符,可是结构对象依然分配在堆栈上而不是堆上,如果不使用new,那么在初始化所有字段之前,字段都保持未赋值状态,且对象不可用, 2.继承性, 结构:不能从另一个结构或者类继承,本身也不能被继承,虽然结构没有明确的使用sealed,可是结构是隐式的sealed。 类:完全可扩展的,除非显示的声明sealed,否则类可以继承其他类的接口,自身继承也能 注,虽然机构不能被继承,可是结构能够继承接口,方法和类继承接口一样, 示例 interface iimage { void Paint(); } struct Picture:IImage { public void Paint() { painting code goes here } private int x,y,z;//other struct members } 3.内部接口 结构: 没有默认的构造函数,但是可以添加构造函数 没有析构函数 没有abstract 和sealed 不能有protected修饰符 可以不适用new初始化 在结构中初始化实例字段是错误的 类: 有默认的构造函数 有析构函数 可以使用abstract和sealed 有protected修饰符 必须使用new初始化 3.如何选择结构还是类 讨论结构与类的相同之处和差别以后,下面讨论如何使用结构还是类 1.堆栈的空间有限,对于大量的逻辑对象,创建类要比创建结构好一些 2.结构表示如点,矩形和颜色这样的轻量级对象,例如声明一个含有1000个点对象的数组 则将引用每个对象分配附加的内存,在此情况下,结构的成本呢较低。 3.在表的抽象和多级别的对象层次时,类是最好的选择 4.大多数情况下该类型只是一些数据时,结构时最佳的选择。

原文地址:https://www.cnblogs.com/zhoubinbin1991/p/2573531.html