c#如何将datagridview中的多行数据插入sql server中
时间: 2024-10-22 10:21:58 浏览: 51
C#中读取sql server的数据,并在datagridview中显示
4星 · 用户满意度95%
在C#中,将DataGridView中的多行数据插入SQL Server数据库通常需要几个步骤:
1. 首先,你需要创建一个SqlConnection对象,连接到你的SQL Server数据库。
```csharp
string connectionString = "Data Source=your_server_name;Initial Catalog=your_database_name;Integrated Security=True";
using (SqlConnection connection = new SqlConnection(connectionString))
{
// 接下来的代码将在这个连接内执行
}
```
2. 确保DataGridView有已选中的行,并获取它们的数据。你可以通过DataGridView.CurrentRow或DataGridView.SelectedRows来访问当前选中的行。
```csharp
List<YourDataType> dataToInsert = new List<YourDataType>();
foreach (DataGridViewRow row in dataGridView.SelectedItems)
{
YourDataType rowData = ConvertRowToYourDataType(row);
dataToInsert.Add(rowData);
}
private YourDataType ConvertRowToYourDataType(DataGridViewRow row)
{
// 这里根据你的表格列映射DataGridView中的数据到YourDataType对象
var yourObj = new YourDataType();
yourObj.Column1 = row.Cells["Column1"].Value;
// ... 其他列处理...
return yourObj;
}
```
3. 使用SqlCommand对象准备SQL INSERT语句并执行它,将数据列表插入数据库。
```csharp
foreach (YourDataType item in dataToInsert)
{
string query = $"INSERT INTO YourTable (Column1, Column2) VALUES (@Column1, @Column2)";
using (SqlCommand command = new SqlCommand(query, connection))
{
command.Parameters.AddWithValue("@Column1", item.Column1);
// 添加其他参数
command.ExecuteNonQuery();
}
}
```
记得替换`YourServerName`, `YourDatabaseName`, `YourTable`以及列名`Column1`、`Column2`等为你实际的数据库信息。
阅读全文