![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
Dear SQLers: I have a couple of problems with Edit Top 200 Rows. 1) I call it up on one table, change one column value (not a key column) from "Cheque" to "Check". When I try to exit the row, I get: No row was updated. The data in row 3 was not committed. Error Source: Microsoft.SqlServer.Management.DataTools. Error Message: The row value(s) updated or deleted either do not make the row unique or they alter multiple rows(2 rows). Correct the errors and retry or press ESC to cancel the change(s). and an OK button. 2) After I have run Edit Top 200 Row and have closed it, I can not rerun my database creation script because the database is supposedly in use. Have I done something wrong, or is this a bug? Sincerely, Gene Wirchenko |
#3
| |||
| |||
|
|
There's a setting in SSMS where you can change this 200 to unlimited. That way, you can check your entire table for the multiple rows. The screendump can be found at http://www.hvandenberg.net/limitrowsinSSMS.bmp |
#4
| |||
| |||
|
|
On Wed, 13 Apr 2011 22:56:58 +0200, Henk van den Berg hvandenberg (AT) xs4all (DOT) nl> wrote: There's a setting in SSMS where you can change this 200 to unlimited. That way, you can check your entire table for the multiple rows. The screendump can be found at http://www.hvandenberg.net/limitrowsinSSMS.bmp This has nothing to do with the problem. I can see the entire table on the screen. I have verified in the trigger that only one row is being changed with Edit Top 200 Rows. If I remove the trigger, the problem is gone. If I put the trigger back in but commenting out the parts that change values, I get the problem again. If I execute SQL statements in a script, they work fine. It is only in Edit Top 200 Rows that it does not work. [snipped previous] Sincerely, Gene Wirchenko |
#5
| |||
| |||
|
|
1) I call it up on one table, change one column value (not a key column) from "Cheque" to "Check". When I try to exit the row, I get: No row was updated. The data in row 3 was not committed. Error Source: Microsoft.SqlServer.Management.DataTools. Error Message: The row value(s) updated or deleted either do not make the row unique or they alter multiple rows(2 rows). Correct the errors and retry or press ESC to cancel the change(s). and an OK button. |
|
2) After I have run Edit Top 200 Row and have closed it, I can not rerun my database creation script because the database is supposedly in use. Have I done something wrong, or is this a bug? |
#6
| |||
| |||
|
|
Does the trigger fire another trigger in turn? |
#7
| |||||
| |||||
|
|
Gene Wirchenko (genew (AT) ocis (DOT) net) writes: 1) I call it up on one table, change one column value (not a key column) from "Cheque" to "Check". When I try to exit the row, I get: No row was updated. The data in row 3 was not committed. Error Source: Microsoft.SqlServer.Management.DataTools. Error Message: The row value(s) updated or deleted either do not make the row unique or they alter multiple rows(2 rows). Correct the errors and retry or press ESC to cancel the change(s). and an OK button. I don't that grid, and make all my data modifications with scripts. ^^^^^^^^^^^^^^^^^ |
|
Scripts can be reusable. And trying to second-guess SSMS which has some funny quirks, is nothing I like. |
|
Hint: you learn more SQL, if you use scripts. |
|
I can say whether the error message you got makes sense or not, since I don't know the table or the data. |
|
2) After I have run Edit Top 200 Row and have closed it, I can not rerun my database creation script because the database is supposedly in use. Have I done something wrong, or is this a bug? I would guess this is regular connection pooling. That is, the client API holds the connection for 60 seconds after disconnection so it can be resued. This is nothing specific to SSMS. The way out is ALTER DATBASE db SET SINGLE_USER WITH ROLLBACK IMMEDIATE That kills all connections against the database. |
![]() |
| Thread Tools | |
| Display Modes | |
| |