[racket] merits of 2 different methods of interfacing Racket to a database

From: Ryan Culpepper (ryan at cs.utah.edu)
Date: Mon Oct 1 10:57:53 EDT 2012

Using 'system' to call the sqlite3 program to run '.import' seems 
preferable to me, especially if the import happens infrequently.

Ryan

On 09/30/2012 10:31 PM, Don Green wrote:
> Please comment on the merits of 2 different methods of interfacing
> Racket to a database.
>
> My use of the term ".import", is in reference to the SQLite3 database
> dot command.
>
> Is Method B preferable to Method A? If so, why?
>
> Method A
>
> Instead of using the Racket: connection function: (define db1
> (sqlite3-connect ...
>
> I can use Racket's 'system' function, to issue SQLite3 dot commands such
> as '.import' to load a million lines of data from a file into a new
> SQLite db.
>
> I can then proceed to use Racket's SQL db access commands to insert or
> select data.
>
> OR
>
> Method B
>
> Use the Racket: connection function: (define db1 (sqlite3-connect ...
>
> Racket does not implement SQLite dot commands, so either:
>
> a) write a million Racket SQL commands such as:
>
> (query-exec db1 "insert into table1 values ('a1', 'b2' 'c3')")
>
> (query-exec db1 "insert into table1 values ('aaa', 'bbb' 'ccc')")
>
> etc.
>
> OR
>
> b) write a function:
>
> (query-exec db1 "insert into table1 values (list-loop)")
>
> where:merits of 2 different methods of interfacing Racket to a database
>
> (list-loop) is a function that loops through each of the million lines
> in a data file that are intended for the database: db1.
>
> THANKS.
>
> Filter settings
>
>
> ____________________
>    Racket Users list:
>    http://lists.racket-lang.org/users
>


Posted on the users mailing list.