warning, readers: the below is boring. I'm just
following up.

--- Rich Shepard <[EMAIL PROTECTED]> wrote:

> On Sun, 1 Oct 2006, George Herson wrote:
> 
> > It seems to me that
> http://www.sqlite.org/lang_createtable.html should
> > mention the ramifications of not passing in a
> database name when using the
> > sqlite3 executable.
> 
> George,
> 
>    I believe that the examples always show a
> database name when the
> executable is invoked.

I hear you, but...

Examples aren't a substitute for clear statements re:
important behavior.  You don't think this is worth a 
single sentence in the docs?  I disagree.

> > the executable should confirm an exit involving
> impending data loss.
> 
>    The default is to create tables in memory when no
> database is used.
> Invoking sqlite3 without any database name is
> equivalent to invoking it with
> ":memory:". Makes sense if you think about it a bit.

It can make sense and still not make sense to not
mention it.  Should deductive reasoning and knowing
not only this fact but having thought thru the
possible ramifications be necessary if a new user
wants to avoid loss of his data and understand what's
happening w/o bothering a mailing list?  I think
reading the docs should be enough on an important
point like this. 

Perhaps user annotations in the manual are worth
doing.  Then people like me could annotate and others
who don't need or aren't interested could ignore them.
 I'll help with this if anyone wants to let me.  I
know PHP well and have written such a program in Perl.

> > the executable should print at the start a caution
> when started without a
> > database name.
> 
>    See above.
> 
>    Remember that sqlite3 is a programmer's database
> engine and designed to be
> embedded in applications. Yes, it can be used as a
> stand-alone rdbms, but
> that's not the intent.

The command line interface is what my suggestion
pertains to.
 
>    If you create tables without specifying in which
> database they belong,
> sqlite3 has no idea what to do with them. As noted
> above, they're in memory
> and not added to a disk file because no such file
> exists.
> 
>    You'll find the same behaviors with PostgreSQL
> and, perhaps, MySQL. It is
> not asking users too much to name the database (==
> filename with sqlite3)
> when invoking the engine.

No, it's very easy. The problem is knowing to do it.

I disagree that PostgreSQL and MySQL do the same. I've
used both of them extensively.  They have temp tables
and memory storage engines, yes, but is that what I've
talking about?  No, it isn't.

I'm now going to study the VDBE.

George 

> HTH,
> 
> Rich
> 
> -- 
> Richard B. Shepard, Ph.D.               |    The
> Environmental Permitting
> Applied Ecosystem Services, Inc.(TM)    |           
> Accelerator
> <http://www.appl-ecosys.com>     Voice: 503-667-4517
>      Fax: 503-667-8863
> 
>
-----------------------------------------------------------------------------
> To unsubscribe, send email to
> [EMAIL PROTECTED]
>
-----------------------------------------------------------------------------
> 
> 


-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to