[sqlite] Database Locked Error... problem still persists

2006-02-01 Thread Ritesh Kapoor
Hi,

Background Info -
1. Using Linux kernel v2.4.21 on both machines.

2. Scenario in which this problem occurs - when I rlogin/rsh to another
machine and then run the app 
calls to sqlite3_open() work successfully
calls to sqlite3_exec() return 'database is locked' error message

3. This problem does not occur if I run the app on my local machine.
-

I've debugged this issue and found that the problem lies with fcntl()
returning a failure (i.e. -1) which causes sqlite3 functions to return
"database is locked" error.

The fcntl() calls which return -1 are of this type -

fcntl64(5, F_SETLK64, {type=F_RDLCK, whence=SEEK_SET, start=1073741824,
len=1}, 0xbfffe4f0)


I think its safe to assume that the use of F_SETLK64 causes the fcntl()
fn to fail.  

Is there a solution to this without changing the NFS settings.  Maybe if
I modify the fcntl() calls in sqlite source code so that instead of
F_SETLK64 I pass some other command.  I've tried passing F_SETLKW64 but
that reproduces the problem again.

I also tried another option in os_unix.c file which sqlite uses for
DJGPP in which the fcntl() is re-defined as -

#define fcntl(A,B,C) 0

but this gives another error message related to OS not able support
large file formats.


Could you please suggest some other alternative(s) except for
reconfiguring NFS server - this is something we just can't do.  Thanks
for your help.


Regards,
Ritesh



On Mon, 2006-01-30 at 19:31, [EMAIL PROTECTED] wrote:
> Ritesh Kapoor <[EMAIL PROTECTED]> wrote:
> > Yes.
> > My machine has NFS and the machines I log onto also have NFS.  But if
> > this is the problem then why dosen't it appear on my machine when I run
> > the app.
> 
> Perhaps you are using a local filesystem when you run on 
> your machine.  Or perhaps NFS is configured properly on
> your machine but not on the other machines.
> 
> 
> > Is there a workaround for this? without having to change the file system
> > from NFS.
> > 
> 
> Yes.  Configure your NFS so that file locking works correctly.
> 
> --
> D. Richard Hipp   <[EMAIL PROTECTED]>
> 



Re: [sqlite] disk locality

2006-02-01 Thread Joe Wilson
Another question... Does Monotone still Base64 encode all its data before 
putting it into blobs?
If so, using raw binary SQLite blobs would likely give Monotone a 33% speedup 
and smaller
database.

--- Joe Wilson <[EMAIL PROTECTED]> wrote:

> Does Monotone spend most of its database time in a few long running queries 
> or thousands of
> sub-second queries?
> 
> Could you point us to an example monotone database tarball and give some 
> actual examples of
> speed-deficient queries?
> 
> When working with large SQLite databases with blobs I generally find I get 
> much greater speed
> when
> I move expensive data manipulation from the application layer into a custom 
> SQLite function. I
> don't know whether anything in Monotone lends itself to this optimization.
> 
> --- Nathaniel Smith <[EMAIL PROTECTED]> wrote:
> > In its current implementation in monotone, this algorithm seems to be
> > seek-bound.  Some profiling shows that there are cases where we're
> > spending more time blocked waiting for read()s for the db, than it
> > takes to read the entire db 5 times over.  This makes sense.  We're
> > basically doing random reads scattered all over the file, so the OS
> > has no way to do any sort of readahead, which means we're probably
> > hitting disk seek latency on every read, and like usual these days,
> > latency trumps bandwidth.
> 
> 
> 
> __
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around 
> http://mail.yahoo.com 
> 


__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


Re: [sqlite] disk locality

2006-02-01 Thread Joe Wilson
Does Monotone spend most of its database time in a few long running queries or 
thousands of
sub-second queries?

Could you point us to an example monotone database tarball and give some actual 
examples of
speed-deficient queries?

When working with large SQLite databases with blobs I generally find I get much 
greater speed when
I move expensive data manipulation from the application layer into a custom 
SQLite function. I
don't know whether anything in Monotone lends itself to this optimization.

--- Nathaniel Smith <[EMAIL PROTECTED]> wrote:
> In its current implementation in monotone, this algorithm seems to be
> seek-bound.  Some profiling shows that there are cases where we're
> spending more time blocked waiting for read()s for the db, than it
> takes to read the entire db 5 times over.  This makes sense.  We're
> basically doing random reads scattered all over the file, so the OS
> has no way to do any sort of readahead, which means we're probably
> hitting disk seek latency on every read, and like usual these days,
> latency trumps bandwidth.



__
Do You Yahoo!?
Tired of spam?  Yahoo! Mail has the best spam protection around 
http://mail.yahoo.com 


Re: [sqlite] Executing SQL from file

2006-02-01 Thread Dennis Cote

deBooza (sent by Nabble.com) wrote:


Hi

I'm using sqlite in a c++ program, using functions sqlite3_open, sqlite3_exec, 
sqlite3_close etc.

I am trying to import a lot of data, probably around 100,000 rows+. I have 
found it
quicker if I format the data into SQL statements and then use
the shell statement .read to read in the SQL from file and
populate the database, similar to the following:

.read c:\tmp\sql.txt

While this is a solution it's not an ideal one. I would much
prefer to do it programatically, something like this:
void main()
{
while(not end of data)
{
Write data to file
}

ExecuteSQLFromFile( SQLFile )
}

Does anyone know how to do this?

What is the equivelent to .read?

Or does anyone know of a better way?

DFB




--
View this message in context: 
http://www.nabble.com/Executing-SQL-from-file-t1040732.html#a2702793
Sent from the SQLite forum at Nabble.com.

 

I do exactly this to initialize the tables in empty database files. This 
should give you the basic idea.


void ExecuteSQLFromFile(string SQLFile)
{
   ExecuteSQLFromString(LoadFile(SQLFile));
}

void ExecuteSQLFromString(string SQL)
{
   sqlite3_exec(DB, SQL.c_str(), NULL, NULL, NULL);
}

string LoadFile(string Filename)
{
   ifstream file(Filename);
   stringstream s;
   s << file.rdbuf();
   return s.str();
}

The function sqlite3_exec() will execute all the statements in the 
supplied string, one after the other. I do this to execute a sequence of 
different create table statements. In your case you are trying to 
execute the same insert statement over and over to populate a table. 
This is probably best done by using a precompiled statement executed 
multiple times directly in your read loop. Instead of writing the data 
to a file in the loop and then executing the file, you just bind your 
new data to the precompiled statement and then execute the statement 
once for each row of data. Your main function should look something like 
this.


void main()
{
open the database file

create table using sqlite3_exec()   

sqlite3_stmt *s = Prepare Insert Statement using sqlite3_prepare()

while(not end of data)
{
ExecuteStatement(db, s, data)   
}

destroy s using sqlite3_finalize()
}

ExecuteStatement(db, s, data)
{
   Bind data To Statement s using sqlite3_bind...()
   Execute s using sqlite3_step()
   Reset s using sqlite3_reset()
}

To get much better insert speed, you should execute the loop inside a 
transaction. To do this your main would become:


void main()
{
open the database file

create table using sqlite3_exec()   

begin a transaction using sqlite3_exec()

sqlite3_stmt *s = Prepare Insert Statement using sqlite3_prepare()

while(not end of data)
{
ExecuteStatement(s, data)   
}

destroy s using sqlite3_finalize()

end the transaction using sqlite3_exec()
}

HTH
Dennis Cote



RE: [sqlite] Sqllite As server

2006-02-01 Thread Lynn Fredricks
> >We have an existing Sqlite application which till now was 
> fine running 
> >on single machine. Now we need flexibility of client server 
> model. Is 
> >this possible with Sqlite ? . Or alternatively is it possible to use 
> >Sqlite db file from shared drives.
> 
> You can use SQLRelay from http://sqlrelay.sourceforge.net It 
> support SQLite and other databases and several languages and bindings.

There are a lot of commercial products now based on an SQLite engine as
well, but then you have to concern yourself with how they've adapted it to
the network. Just peruse the sub-industry add-on market of your favorite
tool -- Im sure you'll find one (VB, REALbasic, .net, etc).

Best regards,

Lynn Fredricks
President
Paradigma Software, Inc

Joining Worlds of Information

Deploy True Client-Server Database Solutions
Royalty Free with Valentina Developer Network
http://www.paradigmasoft.com





Re: [sqlite] Locking with auto-commit disabled

2006-02-01 Thread Jay Sprenkle
> Hello,
> I have a question regarding sqlite's behavior when auto commit is disabled.
>
> I have two conflicting transactions, A & B, where A is started first.
> B starts by executing some SELECT queries (which all succeed), then on
> the first UPDATE I get SQLITE_BUSY (as A is holding a conflicting
> lock). I was under the assumption that
> repeating the UPDATE until A releases its lock is enough, but what
> actually happens when I attempt this is that I get SQLITE_BUSY all the
> way through, even after A finishes.
>
> I came to the conclusion that I should restart the whole transaction
> instead of trying to repeat the failed UPDATE, but I would really like
> to avoid that (it's not feasible in the application). I'd rather use
> any means of declaring that a transaction requires an exclusive lock
> before it starts (perhaps by issuing an artificial UPDATE as the first
> query, although it's ugly...I wonder if sqlite provides a cleaner
> solution), so that I know if it's going to get blocked as early as
> possible.

try  BEGIN IMMEDIATE

http://sqlite.org/lang_transaction.html


Re: [sqlite] Sqllite As server

2006-02-01 Thread Eduardo

At 07:50 01/02/2006, you wrote:

Dear All,

We have an existing Sqlite application which till now was fine running
on single machine. Now we need flexibility of client server model. Is
this possible with Sqlite ? . Or alternatively is it possible to use
Sqlite db file from shared drives.


You can use SQLRelay from http://sqlrelay.sourceforge.net It support 
SQLite and other databases and several languages and bindings.


HTH 



[sqlite] Locking with auto-commit disabled

2006-02-01 Thread gammal . sqlite
Hello,
I have a question regarding sqlite's behavior when auto commit is disabled.

I have two conflicting transactions, A & B, where A is started first.
B starts by executing some SELECT queries (which all succeed), then on
the first UPDATE I get SQLITE_BUSY (as A is holding a conflicting
lock). I was under the assumption that
repeating the UPDATE until A releases its lock is enough, but what
actually happens when I attempt this is that I get SQLITE_BUSY all the
way through, even after A finishes.

I came to the conclusion that I should restart the whole transaction
instead of trying to repeat the failed UPDATE, but I would really like
to avoid that (it's not feasible in the application). I'd rather use
any means of declaring that a transaction requires an exclusive lock
before it starts (perhaps by issuing an artificial UPDATE as the first
query, although it's ugly...I wonder if sqlite provides a cleaner
solution), so that I know if it's going to get blocked as early as
possible.

Thanks,
Mahmoud


--
This message was sent from a MailNull anti-spam account.  You can get
your free account and take control over your email by visiting the
following URL.

   http://mailnull.com/


[sqlite] Intel compiler warnings with 3.3.3

2006-02-01 Thread Miguel Angel Latorre Díaz

No bugs, just "benign" warnings.

btree.c
.\Sqlite\v3\btree.c(432): remark #1418: external definition with no prior 
declaration

 int sqlite3_btree_trace=0;  /* True to enable tracing */
 ^

This variable is only used here and in test3.c.
I guess it should be enclosed between the #if SQLITE_TEST directive and 
modify the test3.c to take that into account.

Same with sqlite3_os_trace in os_common.h. And sqlite3_opentemp_count?
.\Sqlite\v3\btree.c(6535): remark #111: statement is unreachable
 return sqlite3pager_sync(pBt->pPager, zMaster, 0);
 ^


I think the second sqlite3pager_sync call needs to be enclosed in the #else 
directive. (no harm).


os_win.c
.\Sqlite\v3\os_win.c(99): remark #1418: external definition with no prior 
declaration. Can be made static.

 int sqlite3_os_type = 0;
 ^




Re: [sqlite] Executing SQL from file

2006-02-01 Thread Jay Sprenkle
> I'm using sqlite in a c++ program, using functions sqlite3_open, 
> sqlite3_exec, sqlite3_close etc.
>
> I am trying to import a lot of data, probably around 100,000 rows+. I have 
> found it
> quicker if I format the data into SQL statements and then use
> the shell statement .read to read in the SQL from file and
> populate the database, similar to the following:

You probably need to wrap a transaction around your insert statements.

You might want to consider using the step() function instead of exec
when you have parameters. It prevents sql injection attacks and a lot of
fiddling with strings.


Re: [sqlite] Executing SQL from file

2006-02-01 Thread Marian Olteanu
Something related, but that doesn't really answer the question: if you 
want to populate a database with so many rows, to speed up things a lot 
you should embed them into a transaction (or in a small number of 
transactions). This way, if sqlite works synchronously, it doesn't need to 
flush data onto disk for every insert statement. I think it will work 
10-100 times faster.


On Wed, 1 Feb 2006, deBooza (sent by Nabble.com) wrote:




Hi

I'm using sqlite in a c++ program, using functions sqlite3_open, sqlite3_exec, 
sqlite3_close etc.

I am trying to import a lot of data, probably around 100,000 rows+. I have 
found it
quicker if I format the data into SQL statements and then use
the shell statement .read to read in the SQL from file and
populate the database, similar to the following:

.read c:\tmp\sql.txt

While this is a solution it's not an ideal one. I would much
prefer to do it programatically, something like this:
void main()
{
while(not end of data)
{
Write data to file
}

ExecuteSQLFromFile( SQLFile )
}

Does anyone know how to do this?

What is the equivelent to .read?

Or does anyone know of a better way?

DFB




--
View this message in context: 
http://www.nabble.com/Executing-SQL-from-file-t1040732.html#a2702793
Sent from the SQLite forum at Nabble.com.



[sqlite] Compile sqlite_src to a static library with dev-cpp

2006-02-01 Thread Daniel Hahn

Hi all,

I compiled a static library with dev-cpp out of the sqlite_src-package 
from the homepage. No error or warning occured but...


when I use my compiled library instead the one out of the 
dev-cpp-package the program aborts without any error message.


Why?

Thanks!

Daniel


[sqlite] Executing SQL from file

2006-02-01 Thread deBooza (sent by Nabble.com)


Hi

I'm using sqlite in a c++ program, using functions sqlite3_open, sqlite3_exec, 
sqlite3_close etc.

I am trying to import a lot of data, probably around 100,000 rows+. I have 
found it
quicker if I format the data into SQL statements and then use
the shell statement .read to read in the SQL from file and
populate the database, similar to the following:

 .read c:\tmp\sql.txt

While this is a solution it's not an ideal one. I would much
prefer to do it programatically, something like this:
void main()
{
while(not end of data)
{
Write data to file
}

ExecuteSQLFromFile( SQLFile )
}

Does anyone know how to do this?

What is the equivelent to .read?

Or does anyone know of a better way?

DFB




--
View this message in context: 
http://www.nabble.com/Executing-SQL-from-file-t1040732.html#a2702793
Sent from the SQLite forum at Nabble.com.


Re: [sqlite] Disk IO error on AIX

2006-02-01 Thread Christian Smith
On Tue, 31 Jan 2006 [EMAIL PROTECTED] wrote:

>Robert Tortajada <[EMAIL PROTECTED]> wrote:
>> >
>> The bad return from fsync is -1 so I am not sure that will be helpfull.
>> However, couldn't we just disable DIRSYNC since that seems to be the issue?
>>
>
>Yeah.  Just disable DIRSYNC.  This will slightly increase
>the risk of database corruption following a power failure
>(the risk is that the journal files name will be lost and
>the file itself will be moved into /lost+found).  But how
>often does that happen, really?


Given that any OS today surely does directory manipulation either
synchronously, in-order (such as soft updates) or journalled, is this a
case that can even occur?

Christian

-- 
/"\
\ /ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
 X   - AGAINST MS ATTACHMENTS
/ \


Re: [sqlite] Fwd: Does SQLite provide XML support

2006-02-01 Thread John Stanton
I use a program which converts a simple SQL result into XML.  It is just 
a C program calling Sqlite.  You are welcome to a copy if it would help you.

JS

pavan savoy wrote:

-- Forwarded message --
From: pavan savoy <[EMAIL PROTECTED]>
Date: Jan 31, 2006 7:17 PM
Subject: Does SQLite provide XML support
To: [EMAIL PROTECTED]

Hi,
 I searched through your FAQ's mailing list, but the answer nor
the question is not this simple.

Hence I just want to know is there a tool where I can just say

#db2xml test.db test.xml

which converts test.db database to XML format. I dont really care abt DTD,
stuff and all. I just want it to be converted. Thats it ...


Thank you





Re: [sqlite] disk locality

2006-02-01 Thread drh
Nathaniel Smith <[EMAIL PROTECTED]> wrote:
> I was wondering if there were any docs or explanations available on
> how SQLite decides to lay out data on disk.

Free pages in the middle of the file are filled first.  Some effort
is made to uses pages that are close together for related information.
In mototone, where you seldom if ever delete anything, you probably
never have any free pages, so new information is always added to the
end of the file.

After you VACUUM, everything will be on disk in row order.  If
you see a big performance improvement after VACUUMing, then the
disk layout is perhaps an optimization worth looking into.  If
however (as I suspect) your performance is similar after vacuuming,
then changing the way information is added to the disk probably
will not help, since after a VACUUM the information is pretty much
optimally ordered for minimum seeking.

> 
> In particular, consider the problem of reconstructing bitstrings
> given a bunch of xdelta's (basically one-way patches) and full texts;
> a typical problem would be to calculate a chain of deltas that applied
> one-by-one to a full text will give the desired text, then pull those
> deltas and the full text out of the db and apply them.  We just store
> these text objects as columns in two tables.
> 
> In its current implementation in monotone, this algorithm seems to be
> seek-bound.  Some profiling shows that there are cases where we're
> spending more time blocked waiting for read()s for the db, than it
> takes to read the entire db 5 times over.  This makes sense.  We're
> basically doing random reads scattered all over the file, so the OS
> has no way to do any sort of readahead, which means we're probably
> hitting disk seek latency on every read, and like usual these days,
> latency trumps bandwidth.
> 
> So, the question is how to fix this.

If you can provide specific schemas and query examples and information
on how big the database is, I might could help.  So far, the problem
is too vague for me to give much useful input.

Let me propose a radical solution:  I've been experimenting with adding
a VCS component to CVSTrac (http://www.cvstrac.org/) to replace CVS and
thus provide a complete project management system in a standalone CGI
program.  My latest thinking on this (backed up by experiment) is to
avoid storing long series of xdeltas.  Each file version is instead stored
as a baseline and a single xdelta.  The manifest stores two UUIDs instead
of one.  That way, you can always load a particular file version with
at most two lookups.  As a file evolves, the baseline version stays the
same and the xdelta changes from one version to the next.  When the size
of the xdelta reachs some fraction of the baseline file size, create a
new baseline.  Experimentally, I have found it works well to create a
new baseline when the xdelta becomes 15% of the size of the baseline.

My studies (based on the revision history of SQLite) indicate that using 
a baseline plus single xdelta representation results in a repository that 
is about 2x to 3x larger than using a long change of xdeltas.  But access 
is faster.  And the repository is still 6x to 10x smaller than a git-style
repository that uses no deltas anywhere.

--
D. Richard Hipp   <[EMAIL PROTECTED]>



[sqlite] Kexi 1.0 beta 1 released

2006-02-01 Thread Jarosław Staniek


For original announcement with links see 
http://kexi-project.org/wiki/wikiview/index.php?1.0Beta1Announcement


---
Kexi Team Ships Beta Version of the First Major 1.0 Release to Free
Integrated Database Environment

January 31, 2006 (The INTERNET). The Kexi Team today announced the
immediate availability of Kexi 1.0 Beta 1, codenamed "Black Mamba", the
newest release of the integrated environment for managing data.


Changes

(since 0.9 version)

* Improved data-aware forms.
* Form Designer's Data Source Pane for assigning data source to
  forms and widgets. Object tree view for easier navigating within
  widgets hierarchy.
* Import from CSV files and pasting tabular data from clipboard.
  Export data to CSV files and copying tabular data to clipboard.
  Automatic detection of delimiters and column types.
* Improved server connection dialog. Stored connection data.
* Support for images in forms (stored as BLOBs).
* New form widget: multiline editor.
* Improved MS Access (MDB) file import (optional plugin).
* Improved import of server databases to a file-based projects.
  Entire Kexi projects (not only tables) can be imported too.
* Scripting plugin (Python and Ruby) to extend functionality,
  including example script for HTML export.
* Simple printouts, print settings and print preview for table and
  query data.
* Handbook added (incomplete).
* More than two hundreds of overall improvements and bug fixes.

See also Detailed information on changes
 and Screenshots
.


Download

Kexi binary packages provided by some Linux/UNIX vendors are available
within KOffice release
.
Testing Facilities with klik  are also available.

MS Windows installation package from OpenOffice Polska
 is available
.

Full Kexi source code ready to compile can be obtained with instructions
here
.


More information

This version is released within KOffice KOffice 1.5 Beta 1
.

*How to compile Kexi*. To learn how to compile Kexi, see this document
.

*Support.* Kexi users are invited to report bugs and wishes. This can be
done by using the KDE Bug Tracking System .

*Unsupported features.* Updated list of unsupported features and known
problems is also available
.


News

*Mailing lists* for users and developers are now available
.

*Jobs*. /"Ask not what Kexi can do for you, ask what you can do for
Kexi"/. Kexi Team is looking for developers, and package maintainers
(vide supported Linux distributions). Translators, testers, users and
development documentation writers, and any other forms of support are
also welcome. Contact  the
Team for more information.

*Multiplatform Availability.* Kexi on Linux (e.g. Debian) is available
for many architectures ,
including 64-bit Intel/AMD and Apple PowerPC.

*Features in progress.* Scripting using Python and Ruby languages; Auto
Field widgets in forms.


Sponsorship

Kexi is developed by Kexi Team - an international group of independent
developers, with assistance and workforce coming from the OpenOffice
Polska  company.


About Kexi

Kexi is an integrated environment for managing data. It can be used for
creating database schemas; inserting data; performing queries, and
processing data. Forms can be created to provide a custom interface to
your data. All database objects - tables, queries and forms - are stored
in the database, making it easy to share databases.

As Kexi is a real member of the K Desktop Environment
 and KOffice  projects, it
integrates fluently into both on Linux/Unix. It is designed to be fully
usable also without running KDE Desktop on Linux/Unix, MS Windows and
Mac OS X platforms.

Kexi is considered as a long awaited Open Source competitor for MS
Access, Filemaker and Oracle Forms. Its development is motivated by the
lack of Rapid Application Development (RAD) tools for database systems
that are sufficiently powerful, inexpensive, open standards driven and
portable across many OSes and hardware platforms.


--
regards / pozdrawiam,
 Jaroslaw Staniek / OpenOffice Polska

 Kexi Developer:  http://www.kexi-project.org | http://koffice.org/kexi
 Kexi Support:http://www.kexi-project.org/support.html
 Kexi For MS Windows: 

Re: [sqlite] Sqllite As server

2006-02-01 Thread Hakki Dogusan

Hi,

Vishal Kashyap wrote:

Dear All,

We have an existing Sqlite application which till now was fine running
on single machine. Now we need flexibility of client server model. Is
this possible with Sqlite ? . Or alternatively is it possible to use
Sqlite db file from shared drives.


--
With Best Regards,
Vishal Kashyap.
http://www.vishal.net.in






I wrote a library for this type of usage. I was needed wxSQLite3 
implementation which can be used local/or C/S transparently.

For server side I'm using Lua bindings of sqlite3. To communicate
with server I'm using Yami messaging library. For client side
I'm using -higly modified- wxSQLite3 library. All of the
communication/usage etc. is enveloped in a simple interface called:
DSAS. Although I started to write this for sqlite3 usage,
library is more generic now.

Maybe You find a usage for it.

For download look given address for DSAS.

--
Regards,
Hakki Dogusan
http://www.dynaset.org/dogusanh






Re: [sqlite] Decimal separator

2006-02-01 Thread Arjen Markus
Carl Jacobs wrote:
> 
> > > All would be fine but look at this :
> > >
> > > create table test(
> > > price double,
> > > amount double default 0
> > > );
> > >
> > > insert into test(price) values("12,0");
> > >
> > > amount now = 0.0
> 
> The world seems to have settled on using Arabic numerals 0, 1, 2 ... 9. I
> think we should think about settling on . as the decimal separator, it would
> save a bit of confusion if we all used the same notation.
> 
> I suspect that "12,0" is being stored as a string. Don't forget that for all
> intents and purposes sqlite3 is typless, so it will store your value in
> whatever is the most compact form. So, if you want to, you can store a
> picture of yourself in field price!
> 
> Regards,
> Carl.

Older English books on mathematical and physical subjects use a dot that
is
centred on the line, not the period we are now accustomed to, because
that
particular glyph is simply not present on the keyboard. I can think of a
lot 
of other typograhical conventions that have lost the battle against the
relentless keyboard. Oh well, I suppose I am getting old ;).

As for the design decision that Richard mentions in his reply, I quite
agree: it is better to stick to that one radix point than to try and
satisfy all people - I have seen a lot of sorrow and hardship from the
imperfect attempts to do otherwise. (I will just bring in the example
of older versions of MS Excel where a dot or a comma in a file would
make it unusable on a machine with a different regional setting).

A helper function to sort this out would be the solution to go for.

Regards,

Arjen



Re: [sqlite] Sqllite As server

2006-02-01 Thread Craig Morrison

Vishal Kashyap wrote:

Dear All,

We have an existing Sqlite application which till now was fine running
on single machine. Now we need flexibility of client server model. Is
this possible with Sqlite ? . Or alternatively is it possible to use
Sqlite db file from shared drives.


Don't know if this is of any use..

http://www.it77.de/sqlite/sqlite.htm

Look around the Wiki for SQLite, there's some good information there.

--
Craig Morrison
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
http://pse.2cah.com
  Controlling pseudoephedrine purchases.

http://www.mtsprofessional.com/
  A Win32 email server that works for You.