Changeset 9077 in project


Ignore:
Timestamp:
02/27/08 23:03:25 (12 years ago)
Author:
svnwiki
Message:

Changes applied for Vincent Manis (154.20.178.32) through svnwiki:

Added a few comments.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • wiki/dbi

    r9072 r9077  
    44
    55; <procedure>(dbi:connect TYPE #!key FILE PORT USER PASS etc)</procedure> : Connect to a database. TYPE is a symbol, like mysql, postgres, sqlite, etc. Returns a connection object.
     6''Possibly put the type, file, and port info into a URI-type string as JDBC does? That would make
     7the whole thing a lot more extensible; it would be nice to do it both ways, having the separate keyword parameters also. -- vincent''
    68
    79; <procedure>(dbi:query CONNECTION SQL)</procedure> : Query the database (see the mysql egg)
     
    2123
    2224''Instead of the query-fold, query-map and query-for-each procedures I'd prefer just returning a SRFI-40/SRFI-41 stream using promises that advance the cursor when forced. This way you don't restrict the user to these three procedures, but he can use the full stream library to iterate over the result set.'' -- [[Peter Bex]]
     25
     26''I'd like to see support for prepared statements. Especially in transactional environments, on some
     27DBMSs they can result in big performance wins. And a DBMS that doesn't support them can easily
     28implement stubs (e.g., prepare creating a record that holds the original string). Also, another vote for streams. -- vincent''
     29
    2330=== Open issues
    2431
     
    2936Ozzi proposes either an association list or a plain list.
    3037
     38''Plain list or vector would be my choice. There should be a separate way of getting the field
     39names. Also, there's the issue of how field values are represented. For those data types that correspond to Scheme values, the obvious conversion would be fine; for other datatypes it may not be so obvious.There also needs to be a blob API, so that one can read a piece of a blob without having to ship the whole thing over the network. -- vincent''
     40
    3141==== Null Representation
    3242
    33 How are null values represented?
     43How are null values represented? ''{{nil}} sounds fine to me. And yes, I recognize that SQL {{null}} and
     44Scheme {{nil}} have different semantics. -- vincent''
    3445
    3546==== Return values
Note: See TracChangeset for help on using the changeset viewer.