Skip to content

Commit 2b385f4

Browse files
authored
Merge pull request #250 from adampoit/fix-affected-rows
Properly sum affected row count.
2 parents 44cb625 + 40f211b commit 2b385f4

File tree

2 files changed

+24
-1
lines changed

2 files changed

+24
-1
lines changed

src/MySqlConnector/MySqlClient/Results/ResultSet.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public async Task<ResultSet> ReadResultSetHeaderAsync(IOBehavior ioBehavior)
4040
if (firstByte == OkPayload.Signature)
4141
{
4242
var ok = OkPayload.Create(payload);
43-
RecordsAffected = ok.AffectedRowCount;
43+
RecordsAffected += ok.AffectedRowCount;
4444
LastInsertId = ok.LastInsertId;
4545
ColumnDefinitions = null;
4646
State = (ok.ServerStatus & ServerStatus.MoreResultsExist) == 0

tests/SideBySide/InsertTests.cs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,29 @@ public async Task LastInsertedId()
3636
}
3737
}
3838

39+
[Fact]
40+
public async Task RowsAffected()
41+
{
42+
await m_database.Connection.ExecuteAsync(@"drop table if exists insert_rows_affected;
43+
create table insert_rows_affected(id integer not null primary key auto_increment, value text null);");
44+
45+
try
46+
{
47+
await m_database.Connection.OpenAsync();
48+
using (var command = new MySqlCommand(@"
49+
INSERT INTO insert_rows_affected (value) VALUES (null);
50+
INSERT INTO insert_rows_affected (value) VALUES (null);", m_database.Connection))
51+
{
52+
var rowsAffected = await command.ExecuteNonQueryAsync();
53+
Assert.Equal(2, rowsAffected);
54+
}
55+
}
56+
finally
57+
{
58+
m_database.Connection.Close();
59+
}
60+
}
61+
3962
[Fact]
4063
public void LastInsertedIdExplicitStart()
4164
{

0 commit comments

Comments
 (0)