|
|
1.1 ! root 1: {\rtf0\ansi{\fonttbl\f0\fswiss Helvetica;\f1\fmodern Ohlfs;} ! 2: \paperw11700 ! 3: \paperh9320 ! 4: \margl120 ! 5: \margr120 ! 6: {\colortbl;\red0\green0\blue0;} ! 7: \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f0\b\i0\ulnone\fs36\fc0\cf0 Evaluator ! 8: \b0\fs24 \ ! 9: by Jack Greenfield, NeXT Engineering\ ! 10: \ ! 11: ! 12: \b\fs28 Overview ! 13: \f1\b0\fs20 \ ! 14: ! 15: \f0\fs24 This example shows how to evaluate any arbitrary SQL statement or stored procedure by using a subclass of DBBinder, called MultiBinder. This example has been designed to be used with the 3.1 Sybase Adaptor, so that you can get a non-rectangular result set from the evaluation of the stored procedure. However, it could theoretically work with other adaptors as well. \ ! 16: ! 17: \fc1\cf1 \ ! 18: ! 19: \b\fs28 Program Organization\ ! 20: ! 21: \b0\fs24 \ ! 22: ! 23: \b Major Classes in the Application ! 24: \b0 \ ! 25: \ ! 26: \ ! 27: ! 28: \pard\tx2160\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\fi-2140\li2140\fc1\cf1 MultiBinder A subclass of DBBinder. This object extends the DBBinder functionality. In particular, it adds the ability to notify the DBBinder delegate when a new result set has been fetched from the binder. Thus, one can get multiple result sets from a stored procedure evaluation. Note that this feature is only valid starting with NextStep Release 3.1. \ ! 29: \ ! 30: SQLWindow A generic object responsible for evaluating the SQL string and displaying the results from the DBBinder fetch operations.\ ! 31: ! 32: \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\fc1\cf1 \ ! 33: ! 34: \pard\tx2160\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\fi-2140\li2140\fc1\cf1 ScrollViewDriver A generic object with a scrollview outlet to display text inside a scrollview � la sprintf style.\ ! 35: ! 36: \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\fc1\cf1 \ ! 37: ! 38: \b\fs28 Topics Of Interest\ ! 39: ! 40: \pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\fs24\fc1\cf1 \ ! 41: How to evaluate a stored procedure or any other SQL string ! 42: \b0 \ ! 43: This is done in the SQLWindow class. See the method ! 44: \b evaluate: ! 45: \b0 in the file SQLWindow.m\ ! 46: ! 47: \pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\b\fc1\cf1 \ ! 48: How to display the result set returned by a stored procedure or the execution of an SQL string ! 49: \b0 \ ! 50: This is done in the SQLWindow class. See the method ! 51: \b binderWillChangeResultSet: ! 52: \b0 in the file SQLWindow.m\ ! 53: ! 54: \pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320\b\fc1\cf1 \ ! 55: ! 56: \pard\tx1340\tx2680\tx4020\tx5360\tx6720\tx8060\tx9400\tx10740\tx12080\tx13440\b0\fc1\cf1 Last Edited: Mai Nguyen, July 1993 ! 57: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.