我正在与丹麦奥尔堡大学的一群同学一起开展一个项目,我们必须在那里编写IT系统代码。我们正在使用C#,现在我们不再受到进一步的发展。我正在使用系统的一部分,其中admninistator可以处理来自数据库的不同表。我可以通过使用组合框选择哪一个来获取数据网格中显示的表格。
现在的问题是,我无法弄清楚如何制作一个保存,删除,插入和清除/取消按钮,可以处理特定的选定表并更新正确的一个,尽管我已经尝试了多个灵魂,但似乎没有一个工作。
DataSet包含5个表:
DataSet = p4DataSet。
表:customer_table,employee_table,shop_table,order_table和product_table。
希望有人可以帮助提出如何使这项工作的建议。
这是我到目前为止的代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
using MySql.Data;
namespace AdminFinal
{
public partial class Form1 : Form
{
MySqlDataAdapter daTableinfo;
DataSet dsTableinfo;
string connStr = "server=localhost;user=root;database=p4;port=3306;password=fordgt40;charset=latin1;";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
{
if (comboBox1.SelectedItem == "Kunder")
{
MySqlConnection conn = new MySqlConnection(connStr);
try
{
label2.Text = "Connecting to MySQL...";
string sql = "SELECT * FROM customer_table";
daTableinfo = new MySqlDataAdapter(sql, conn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(daTableinfo);
dsTableinfo = new DataSet();
daTableinfo.Fill(dsTableinfo, "customer_table");
dataGridView1.DataSource = dsTableinfo;
dataGridView1.DataMember = "customer_table";
}
catch (Exception ex)
{
label2.Text = ex.ToString();
}
}
else if (comboBox1.SelectedItem == "Ansatte")
{
MySqlConnection conn = new MySqlConnection(connStr);
try
{
label2.Text = "Connecting to MySQL...";
string sql = "SELECT * FROM employee_table";
daTableinfo = new MySqlDataAdapter(sql, conn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(daTableinfo);
dsTableinfo = new DataSet();
daTableinfo.Fill(dsTableinfo, "employee_table");
dataGridView1.DataSource = dsTableinfo;
dataGridView1.DataMember = "employee_table";
}
catch (Exception ex)
{
label2.Text = ex.ToString();
}
}
else if (comboBox1.SelectedItem == "Produkter")
{
MySqlConnection conn = new MySqlConnection(connStr);
try
{
label2.Text = "Connecting to MySQL...";
string sql = "SELECT * FROM order_table";
daTableinfo = new MySqlDataAdapter(sql, conn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(daTableinfo);
dsTableinfo = new DataSet();
daTableinfo.Fill(dsTableinfo, "order_table");
dataGridView1.DataSource = dsTableinfo;
dataGridView1.DataMember = "order_table";
}
catch (Exception ex)
{
label2.Text = ex.ToString();
}
}
else if (comboBox1.SelectedItem == "Ordre")
{
MySqlConnection conn = new MySqlConnection(connStr);
try
{
label2.Text = "Connecting to MySQL...";
string sql = "SELECT * FROM product_table";
daTableinfo = new MySqlDataAdapter(sql, conn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(daTableinfo);
dsTableinfo = new DataSet();
daTableinfo.Fill(dsTableinfo, "product_table");
dataGridView1.DataSource = dsTableinfo;
dataGridView1.DataMember = "product_table";
}
catch (Exception ex)
{
label2.Text = ex.ToString();
}
}
else if (comboBox1.SelectedItem == "Butikker")
{
MySqlConnection conn = new MySqlConnection(connStr);
try
{
label2.Text = "Connecting to MySQL...";
string sql = "SELECT * FROM shop_table";
daTableinfo = new MySqlDataAdapter(sql, conn);
MySqlCommandBuilder cb = new MySqlCommandBuilder(daTableinfo);
dsTableinfo = new DataSet();
daTableinfo.Fill(dsTableinfo, "shop_table");
dataGridView1.DataSource = dsTableinfo;
dataGridView1.DataMember = "shop_table";
}
catch (Exception ex)
{
label2.Text = ex.ToString();
}
}
else
{
label2.Text = "Vælg en tabel at arbejde med...";
}
}
}
private void btnAdd_Click(object sender, EventArgs e)
{
this.p4DataSetBindingSource.AddNew();
}
private void btnSave_Click(object sender, EventArgs e)
{
this.Validate();
this.p4DataSetBindingSource.EndEdit();
// this.p4DataSet.UpdateAll(this.p4DataSet);
}
private void btnDelete_Click(object sender, EventArgs e)
{
this.p4DataSetBindingSource.RemoveCurrent();
}
}
}
非常感谢提前。
丹麦尼古拉