文本框和 Datagridview 组合然后发送到 Mysql C# VisualStudio 代码
Textbox and Datagridview Combine then Send to Mysql C# VisualStudio Code
任何人都可以帮助我我不知道如何在 C# 中组合文本框和数据网格
我有一个
的文本框
Example
Transaction No
123456
Name
Jonjon Candare
Section
IT Staff
DateNeeded
2021-04-21
然后我有一个 datagridview
QTY
ITEM DESC
AMOUNT
1
CD
1
DVD
0
我希望两者结合 datagridview 中的项目和 MYSQL
中所需的事务编号、名称、部分和日期
在 mysql
中得到这个
Transaction No
Name
Section
DateNeeded
QTY
ITEM DESC
AMOUNT
123456
Jonjon Candare
IT Staff
2021-04-21
1
CD
123456
Jonjon Candare
IT Staff
2021-04-21
1
DVD
0
任何人都可以在代码中帮助我吗?任何 C# 样本都像这样
请尝试以下代码将textbox和datagirdview中的数据合并并插入到数据库中。
private void button1_Click(object sender, EventArgs e)
{
string constr = @"";
MySqlConnection connection = new MySqlConnection(constr);
connection.Open();
string sqlcommand = "insert into Product(Transaction_No,Name,Section,DateNeeded,QTY,ITEM_DESC,AMOUNT) values(@Transaction_No,@Name,@Section,@DateNeeded,@QTY,@ITEM_DESC,@AMOUNT)";
MySqlCommand command = new MySqlCommand(sqlcommand, connection);
for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
{
command.Parameters.AddWithValue("@QTY", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
command.Parameters.AddWithValue("@ITEM_DESC", dataGridView1.Rows[i].Cells[1].Value.ToString());
command.Parameters.AddWithValue("@AMOUNT", dataGridView1.Rows[i].Cells[2].Value);
command.Parameters.AddWithValue("@Transaction_No", Convert.ToInt32(txtNo.Text));
command.Parameters.AddWithValue("@Name", txtName.Text);
command.Parameters.AddWithValue("@Section", txtsection.Text);
command.Parameters.AddWithValue("@DateNeeded", Convert.ToDateTime(txtDate.Text));
command.ExecuteNonQuery();
command.Parameters.Clear();
}
MessageBox.Show("success");
}
private void Form1_Load(object sender, EventArgs e)
{
txtNo.Text = "123456";
txtName.Text = "Jonjon Candare";
txtsection.Text = "IT Staff";
txtDate.Text = "2021-04-21";
dataGridView1.Columns.Add("col1", "QTY");
dataGridView1.Columns.Add("col2", "ITEM DESC");
dataGridView1.Columns.Add("col3", "AMOUNT");
dataGridView1.Rows.Add("1", "CD", "");
dataGridView1.Rows.Add("1", "DVD", "0");
}
此外,我使用以下 sql 句子创建了 table。
CREATE TABLE [dbo].[Product]
(
[Transaction_No] INT NULL,
[Name] NVARCHAR(50) NULL,
[Section] NVARCHAR(50) NULL,
[DateNeeded] DATE NULL,
[QTY] INT NULL,
[ITEM_DESC] NVARCHAR(50) NULL,
[AMOUNT] NVARCHAR(50) NULL
)
最后一点,我不建议你创建包含space的文件名,比如Transaction No
,这可能会导致sql错误。所以我将其更改为 Transaction_No
.
测试结果:
任何人都可以帮助我我不知道如何在 C# 中组合文本框和数据网格
我有一个
的文本框Example | |
---|---|
Transaction No | 123456 |
Name | Jonjon Candare |
Section | IT Staff |
DateNeeded | 2021-04-21 |
然后我有一个 datagridview
QTY | ITEM DESC | AMOUNT |
---|---|---|
1 | CD | |
1 | DVD | 0 |
我希望两者结合 datagridview 中的项目和 MYSQL
中所需的事务编号、名称、部分和日期在 mysql
中得到这个Transaction No | Name | Section | DateNeeded | QTY | ITEM DESC | AMOUNT |
---|---|---|---|---|---|---|
123456 | Jonjon Candare | IT Staff | 2021-04-21 | 1 | CD | |
123456 | Jonjon Candare | IT Staff | 2021-04-21 | 1 | DVD | 0 |
任何人都可以在代码中帮助我吗?任何 C# 样本都像这样
请尝试以下代码将textbox和datagirdview中的数据合并并插入到数据库中。
private void button1_Click(object sender, EventArgs e)
{
string constr = @"";
MySqlConnection connection = new MySqlConnection(constr);
connection.Open();
string sqlcommand = "insert into Product(Transaction_No,Name,Section,DateNeeded,QTY,ITEM_DESC,AMOUNT) values(@Transaction_No,@Name,@Section,@DateNeeded,@QTY,@ITEM_DESC,@AMOUNT)";
MySqlCommand command = new MySqlCommand(sqlcommand, connection);
for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
{
command.Parameters.AddWithValue("@QTY", Convert.ToInt32(dataGridView1.Rows[i].Cells[0].Value));
command.Parameters.AddWithValue("@ITEM_DESC", dataGridView1.Rows[i].Cells[1].Value.ToString());
command.Parameters.AddWithValue("@AMOUNT", dataGridView1.Rows[i].Cells[2].Value);
command.Parameters.AddWithValue("@Transaction_No", Convert.ToInt32(txtNo.Text));
command.Parameters.AddWithValue("@Name", txtName.Text);
command.Parameters.AddWithValue("@Section", txtsection.Text);
command.Parameters.AddWithValue("@DateNeeded", Convert.ToDateTime(txtDate.Text));
command.ExecuteNonQuery();
command.Parameters.Clear();
}
MessageBox.Show("success");
}
private void Form1_Load(object sender, EventArgs e)
{
txtNo.Text = "123456";
txtName.Text = "Jonjon Candare";
txtsection.Text = "IT Staff";
txtDate.Text = "2021-04-21";
dataGridView1.Columns.Add("col1", "QTY");
dataGridView1.Columns.Add("col2", "ITEM DESC");
dataGridView1.Columns.Add("col3", "AMOUNT");
dataGridView1.Rows.Add("1", "CD", "");
dataGridView1.Rows.Add("1", "DVD", "0");
}
此外,我使用以下 sql 句子创建了 table。
CREATE TABLE [dbo].[Product]
(
[Transaction_No] INT NULL,
[Name] NVARCHAR(50) NULL,
[Section] NVARCHAR(50) NULL,
[DateNeeded] DATE NULL,
[QTY] INT NULL,
[ITEM_DESC] NVARCHAR(50) NULL,
[AMOUNT] NVARCHAR(50) NULL
)
最后一点,我不建议你创建包含space的文件名,比如Transaction No
,这可能会导致sql错误。所以我将其更改为 Transaction_No
.
测试结果: