Please start any new threads on our new
site at https://forums.sqlteam.com. We've got lots of great SQL Server
experts to answer whatever question you can come up with.
| Author |
Topic |
|
M.E.
Aged Yak Warrior
539 Posts |
Posted - 2002-11-15 : 17:18:56
|
| One of my users just got the response 'Cannot update result set while in firehose mode' or 'transaction cannot start while in firehose mode' Just kinda looked at him funny, firehose mode? Turns out he was using enterprise manager to edit his data (some users here have full access/dbo to a mssql 2000 instance on their local machine for testing purposes). I told him he should learn not to use enterprise manager for updates... But I'm was still curious wtf firehose mode was.Books online glossary :firehose cursorAn obsolete term for default result set.firehose cursorsObsolete term for default result sets.See also: default result setSo, is it my understanding that sql 2000 is using an obsolete term to descirbe whats happening in enterprise manager? I just found it kinda strange and felt like sharing-----------------------SQL isn't just a hobby, It's an addiction |
|
|
royv
Constraint Violating Yak Guru
455 Posts |
Posted - 2002-11-15 : 17:34:07
|
| I got this from sql-server-performance.comWhen using an ADO recordset to return data from SQL Server, the most efficient way is to use what is often called a firehose cursor. The firehouse cursor is really an incorrect term because it is not a cursor. A firehose cursor is just a method to quickly move data from SQL Server to the client that requested it.Essentially, a firehose cursor sends the requested data (from the query) to an output buffer on SQL Server. Once the output buffer is full, it waits until the client can retrieve the data from the output buffer. Then the output buffer is filled again. This process repeats over and over until all of the data is sent to the client. Another advantage of this method is that records are only locked long enough to be moved to the output buffer.When you open an ADO RecordSet and use its default settings, a firehose cursor is automatically used by default. If you want to specify a firehouse cursor manually, you can do so by using these property settings:CursorType = adForwardOnly CursorLocation = adUseServer LockType = adLockReadOnly CacheSize = 1 When the client receives the data from the firehose cursor, the data should be read into a local data structure for local use by the client. ***************************************Death must absolutely come to enemies of the code! |
 |
|
|
|
|
|