注意:使用reader.GetXXX()方式来获取表中的数据,如果数据为null那么就会报异常,此时需要手动代码来判断数据是否为null
while (reader.Read()) { Console.Write(reader.GetInt32(0)); Console.Write(reader.GetString(1)); Console.Write(reader.IsDBNull(2) ? "null":(int?)reader.GetInt32(2)); Console.Write(reader.GetInt32(2)); Console.Write(reader.GetString(3)); }数据绑定需要注意的一点:数据绑定的时候只认“属性”,不识别“字段”
private void Form1_Load(object sender, EventArgs e) { List<Class1> list = new List<Class1>(); string constr = "Data Source=.;Initial Catalog =Person;User ID =sa;Password =sa"; using (SqlConnection con = new SqlConnection(constr)) { string sql = "select *from Student"; using (SqlCommand cmd = new SqlCommand(sql, con)) { con.Open(); using (SqlDataReader reader = cmd.ExecuteReader()) { if (reader.HasRows) { while (reader.Read()) { Class1 model = new Class1(); model.Name = reader.GetString(1); model.Age = reader.GetInt32(2); model.Gender = reader.GetString(3); list.Add(model);--把model对象加到list集合中 } } } } } --数据绑定需要注意的一点:数据绑定的时候只认“属性”,不识别“字段” this.dataGridView1.DataSource = list; --数据绑定 } private void classadd_Click(object sender, EventArgs e) { //1.采集用户的输入 string classname = textname.Text.Trim(); string classage = textage.Text.Trim(); string classgender = textgender.Text.Trim(); //2.执行插入操作! string constr = "Data Source = .;Initial Catalog =Person;User ID=sa;Password =sa"; using (SqlConnection con = new SqlConnection(constr)) { ----------------------------------------------------------------------------------------- string sql = string.Format("insert into Student values(N'{0}',{1},N'{2}')",classname,classage,classgender); String sql = string.Format("update Student set name='{0}',age={1},gender='{2}'",model.name,model,age,model.gender); String sql = string.Format("delete from Student where Autoid={0}",AutoID); ----------------------------------------------------------------------------------------- using (SqlCommand cmd = new SqlCommand(sql, con)) { con.Open(); cmd.ExecuteNonQuery(); this.Text = "插入成功"; LoadDate();//更新数据 } } }