home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 604b.lha / sqldb_v020392 / TODO < prev   
Encoding:
Text File  |  1992-02-04  |  2.6 KB  |  100 lines

  1. add the HAVING to GROUP BY in SELECT -  DONE 03/30/90
  2. extend GROUP BY to allow each group to be a range of values
  3. add ORDER BY to SELECT    - DONE 11/26/91
  4. add DELETE command    - DONE 04/20/90
  5. add UPDATE command    - DONE 05/04/90
  6. add subquery to INSERT
  7. indexes and query optimization
  8. add null-value logic    - four value logic DONE 06/10/91
  9.     
  10.  
  11. implement date-type \_____ DONE 01/27/92
  12. implement time-type /
  13.  
  14. import facilities for dBase and ASCII files
  15.  
  16. fix so tables produced by evalCols() have proper column types - DONE 02/91
  17.  
  18. CLOSE DATABASE - close all open tables
  19.  
  20. develop test suite to test entire functionality
  21.  
  22. add a shell-type interface extension to command interface
  23.     variables
  24.     aliases
  25.     history
  26.     substitutions    
  27.  
  28. Get rid of '{' & '}' in evaluating a boolean expression:    - DONE 01/28/91
  29.  
  30. disk and/or RAM based tables, transparent to user - STARTED 04/02/90
  31.                     ALL BUT GROUP stuff DONE 04/10/90
  32.                             ALL DONE 04/20/90
  33.  
  34. changed handling of deleted rows, disk access is much faster DONE 09/18/91
  35.     
  36. Multi-User
  37.     
  38. Add UNIQUE constraints to CREATE TABLE
  39.     Ex: create table (foo integer, bar integer, unique (foo, bar));
  40.  
  41. Add some kind of comment delimiters to get_tok()
  42.     DONE in cmd-shell interface 11/07/90
  43.  
  44. Add command to allow commands to be read in from file and executed
  45.     DONE    ??/91
  46.  
  47. Add SYSTABLES, SYSCOLUMNS, SYSDOMAINS,      SYSVIEWS 
  48.     ^^^^^^^^^  ^^^^^^^^^^ DONE 7/91
  49.      name    name        name       name
  50.      creator    table        base type       SQL expr
  51.         creator        bottom value   insertable
  52.         coltype     top value       updatable
  53.         domain        less than       deletable
  54.         marks 
  55.         length
  56.         scale
  57.         precision
  58.         pkey
  59.         fkey
  60.  
  61.     create above tables
  62.     open/load table - put each column in SYSCOLUMNS, put table in SYSTABLES
  63.     close/drop table - drop rows in SYSCOLUMNS, and SYSTABLES
  64.         crttab.c
  65.     SQLDB:domains - load upon starting, save upon quitting
  66.     should all files be stored in SQLDB? (multi-user definitely)
  67.  
  68. tablename.cdf    column definition file
  69. tablename.rdf    row definition file
  70.  
  71. BUGS:
  72.           add a check so that a join is not allowed with the same table
  73.     without aliases.
  74.     This is legal: select from foo x, foo y;
  75.     This is not, I think:   select from foo, foo;
  76.  
  77.     no keyword test in table definition
  78.  
  79.     no single-value per group test in GROUP BY    
  80.  
  81. multi-column IN clause:
  82.  
  83.     SELECT * FROM foobar WHERE <col2,col4> IN [
  84.             SELECT col2,col4 FROM footab3 WHERE ...];
  85.  
  86.             or
  87.  
  88.     SELECT * FROM foobar WHERE <col2,col4> IN
  89.              (<pair1a,pair1b>,<pair2a,pair2b>,<pair3a,pair3b>);
  90.  
  91. ----------------------------------------------------------------------------
  92. misc stuff:
  93.  
  94. select sum(1),x.col1,x.col2...
  95.     from mytable x, mytable y
  96.     where x.col1 <= y.col1
  97.     group by x.col1, x.col2...
  98.     order by 1
  99.  
  100.