110,538
社区成员
发帖
与我相关
我的任务
分享
namespace Acess
{
public class GlobalValue
{
public static OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Application.StartupPath + @"\student.mdb");
public static OleDbDataAdapter da = new OleDbDataAdapter("select * from student_info", conn);
//public static OleDbDataAdapter da;
public static DataSet ds = new DataSet();
public static DataSet queryDs = new DataSet();
public static OleDbCommandBuilder cmd = new OleDbCommandBuilder(da);
//public static void UpDataSrc()
//{
// conn.Open();
// da = new OleDbDataAdapter("select * from student_info", conn);
// da.InsertCommand = GlobalValue.cmd.GetInsertCommand();
// da.UpdateCommand = GlobalValue.cmd.GetUpdateCommand();
// da.DeleteCommand = GlobalValue.cmd.GetDeleteCommand();
// da = new OleDbDataAdapter("select * from student_info", conn);
// //da.Fill(GlobalValue.ds);
// conn.Close();
//}
//public static void InitGloVa()
//{
// conn.Open();
// da = new OleDbDataAdapter("select * from student_info", conn);
// da.InsertCommand = GlobalValue.cmd.GetInsertCommand();
// da.UpdateCommand = GlobalValue.cmd.GetUpdateCommand();
// da.DeleteCommand = GlobalValue.cmd.GetDeleteCommand();
// da = new OleDbDataAdapter("select * from student_info", conn);
// da.Fill(GlobalValue.ds);
// conn.Close();
//}
}
}
private void Form1_Load(object sender, EventArgs e)
{
try
{
GlobalValue.conn.Open();
GlobalValue.da = new OleDbDataAdapter("select * from student_info", GlobalValue.conn);
GlobalValue.da.InsertCommand = GlobalValue.cmd.GetInsertCommand();
GlobalValue.da.UpdateCommand = GlobalValue.cmd.GetUpdateCommand();
GlobalValue.da.DeleteCommand = GlobalValue.cmd.GetDeleteCommand();
GlobalValue.da.MissingSchemaAction = MissingSchemaAction.AddWithKey;
GlobalValue.da.Fill(GlobalValue.ds);
GlobalValue.conn.Close();
dataGridView1.DataSource = GlobalValue.ds.Tables[0];
}
catch (System.Exception ex)
{
throw ex;
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
//string strFilter = "Sno = " + textBox1.Text;
//DataView dv = GlobalValue.ds.Tables[0].DefaultView;
//dv.RowFilter = strFilter;
if (textBox1.Text == string.Empty)
{
MessageBox.Show("学号不能为空!");
this.Close();
return;
}
object key = textBox1.Text;
DataRow dr = GlobalValue.ds.Tables[0].Rows.Find(key);
if (dr != null)
{
MessageBox.Show("已有该学号!");
this.Close();
//GlobalValue.conn.Close();
return;
}
GlobalValue.conn.Open();//打开数据库,建立连接
DataRow drx = GlobalValue.ds.Tables[0].NewRow(); //创建一条新记录行
drx["Sno"] = Convert.ToInt32(textBox1.Text);
drx["Sname"] = textBox2.Text;
drx["Sage"] = Convert.ToInt32(textBox3.Text);
drx["Ssex"] = textBox4.Text;
GlobalValue.ds.Tables[0].Rows.Add(drx); //在表中追加记录
int i = GlobalValue.da.Update(GlobalValue.ds); //更新数据库
if (i > 0)
MessageBox.Show("插入成功!");
else
MessageBox.Show("插入失败!");
GlobalValue.conn.Close();//最后 关闭 数据库 连接
this.Close();
}
catch(Exception a)
{
throw a;
}
}
private void 删除学生信息ToolStripMenuItem_Click(object sender, EventArgs e)
{
try
{
GlobalValue.conn.Open();
foreach (DataGridViewRow row in dataGridView1.SelectedRows)
{
dataGridView1.Rows.Remove(row);
}
GlobalValue.da.Update(GlobalValue.ds);
GlobalValue.conn.Close();
}
catch (System.Exception ex)
{
throw ex;
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
GlobalValue.conn.Open();
object key = textBox1.Text;
DataRow dr = GlobalValue.ds.Tables[0].Rows.Find(key);
//dr.ItemArray[1] = textBox2.Text;
//dr.ItemArray[2] = textBox3.Text;
//dr.ItemArray[3] = textBox4.Text;
//GlobalValue.ds.Tables[0].Rows.
dr["Sname"] = textBox2.Text;
dr["Sage"] = textBox3.Text;
dr["Ssex"] = textBox4.Text;
GlobalValue.da.Update(GlobalValue.ds);
GlobalValue.conn.Close();
}
catch(Exception a)
{
throw a;
}
}
private void button1_Click(object sender, EventArgs e)
{
try
{
string strFilter = "Sno >= " + textBox1.Text;
//DataRow[] newDataRow = GlobalValue.ds.Tables[0].Select(strFilter);
//foreach (DataRow tempRow in newDataRow)
//{
// GlobalValue.queryDs.Tables[0].Rows.Add(tempRow);
//}
//f1.dataGridView1.DataSource = GlobalValue.queryDs.Tables[0];
//*******DataView只是一个视图,所以其过滤掉的数据只是不显示出来而已。因此,如果认为当前的数据集只剩过滤出来的数据,然后企图用此数据源来更新原始数据库会出现问题。
DataView dv = GlobalValue.ds.Tables[0].DefaultView;
dv.RowFilter = strFilter;
f1.dataGridView1.DataSource = dv;
}
catch(Exception a)
{
throw a;
}
this.Close();
}