Re: [sqlite] HexValues

2006-09-12 Thread Vivien Malerba

On 9/12/06, guy12 <[EMAIL PROTECTED]> wrote:


hi,

i need to insert hex values in the data base and after that i have to select
them again ...

what's the best way for doing that ??

i first used INTERGER for that but i think that is the wrong way...

p.s. i need to accress the db through my c-code


You can use the notation descrobid at
http://www.sqlite.org/datatype3.html for the BLOB data type.

Cheers,

Vivien

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



Re: [sqlite] Smallest INTEGER wrong? it is -9223372036854775807 and not -9223372036854775808...

2006-09-12 Thread Michael Sizaki

[EMAIL PROTECTED] wrote:

Michael Sizaki <[EMAIL PROTECTED]> wrote:

in java, the smallest long is
   -9223372036854775808

in SQLite it seems to be
   -9223372036854775807

Bug or feature?


Call it what you like.  I deliberately omitted the
lower end to make the last line of sqlite3atoi64()
a little simpler.  (Nobody has noticed in 2.5 years.)


WOW, I'm surprised that nobody found it! There are
a few important values for any integer type: MIN,-1,0,1,MAX
(and a few orhers). If any huge value (e.g 4741939734731675961)
would not work, I'm sure nobody would ever find it, because the
probability of hitting the value (and finding the problem!) is
negligible. But MIN and MAX are fundamental. If you use LONG_MIN
to denote the smallest possible value and assume
  any_integer_value>=-9223372036854775808
you will be very surprised. At least, I was

Ok, I have my workaround, and since I'm the only one
complaining I can live with that :-).

Michael

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



Re: [sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Gerald Dachs
On Tue, 12 Sep 2006 14:29:12 -0400
<[EMAIL PROTECTED]> wrote:

>  files on your computer and this database file accidently got snagged?>
> 
> Thanks, but this application resides on a PDA and my customer is
> reporting this issue on several PDA's. No search/replace operations are
> being performed at a file level on these devices.

They didn't open the database file with something like pocketword and an
auto correction has done its work?

Gerald

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



Re: [sqlite] Smallest INTEGER wrong? it is -9223372036854775807 and not -9223372036854775808...

2006-09-12 Thread Dennis Cote

[EMAIL PROTECTED] wrote:

Michael Sizaki <[EMAIL PROTECTED]> wrote:
  

Hi,

in java, the smallest long is
   -9223372036854775808

in SQLite it seems to be
   -9223372036854775807


Bug or feature?




I deliberately omitted the
lower end to make the last line of sqlite3atoi64()
a little simpler.  (Nobody has noticed in 2.5 years.)



  


Actually, I did notice this when looking at the source while preparing a 
patch to make this routine skip leading whitespace like atoi(). I 
thought it was a little strange, but didn't think anyone was likely to 
run into a problem with that one missing value in a 64 bit integer 
space. However, it seems like somebody always notices these things 
eventually. If I remember correctly it also shows up in the test suite.


Dennis Cote

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



Re: [sqlite] HexValues

2006-09-12 Thread Dennis Cote

guy12 wrote:

i need to insert hex values in the data base and after that i have to select
them again ...

what's the best way for doing that ??

i first used INTERGER for that but i think that is the wrong way...

p.s. i need to accress the db through my c-code 

  

You have a couple of choices.

First you could store your values in sqlite as strings of hex digits. 
You could use code like this to convert a number to a string in s 
containing the hex digits that represent that number.


char s[10];
sprintf(s, "%0X", number)

Then you can insert that string into a text column in sqlite.

You would  retrieve the same string from sqlite using a select statement 
and then convert it back to a number using strtoul(s, NULL, 16) if 
necessary.


Alternatively, you could store the values in sqlite as integers (as you 
seem to have tried). If you have the hex digits of the number in a 
string use strtoul(hex_digits, NULL, 16) to convert them to an integer 
and save that integer in sqlite. Then after you retrieve the integer 
form sqlite, you can convert it back to a string of hex digits using 
sprintf as shown above.


The "best" format to use really depends on how you get the information, 
and how you want to process and display it.


HTH
Dennis Cote

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



Re: [sqlite] Smallest INTEGER wrong? it is -9223372036854775807 and not -9223372036854775808...

2006-09-12 Thread drh
Michael Sizaki <[EMAIL PROTECTED]> wrote:
> Hi,
> 
> in java, the smallest long is
>-9223372036854775808
> 
> in SQLite it seems to be
>-9223372036854775807
> 
> sqlite> create temp table t as select 
> -9223372036854775807,-9223372036854775808;
> sqlite> select * from t;
> -9223372036854775807|-9.22337203685478e+18
> 
> ==> -9223372036854775808 is converted to a float!
> 
> Bug or feature?
> 

Call it what you like.  I deliberately omitted the
lower end to make the last line of sqlite3atoi64()
a little simpler.  (Nobody has noticed in 2.5 years.)

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


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



[sqlite] Smallest INTEGER wrong? it is -9223372036854775807 and not -9223372036854775808...

2006-09-12 Thread Michael Sizaki

Hi,

in java, the smallest long is
  -9223372036854775808

in SQLite it seems to be
  -9223372036854775807

sqlite> create temp table t as select -9223372036854775807,-9223372036854775808;
sqlite> select * from t;
-9223372036854775807|-9.22337203685478e+18

==> -9223372036854775808 is converted to a float!

Bug or feature?

BTW for positive integers the limit of 9223372036854775807 is correct.

How did I find it?

I have a table with integer keys.
  create table t ( k integer primary key);
From java I called
  "select k from t where k > %q";
with %q expanding to -9223372036854775808 (Long.MIN_VALUE)
did not return anything (I expected the entire table!)

Now I use (Long.MIN_VALUE+1).

(Yes I know, I could omit the  where in this case...)

Michael

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



[sqlite] HexValues

2006-09-12 Thread guy12

hi, 

i need to insert hex values in the data base and after that i have to select
them again ...

what's the best way for doing that ??

i first used INTERGER for that but i think that is the wrong way...

p.s. i need to accress the db through my c-code 

thank you very much 
-- 
View this message in context: 
http://www.nabble.com/HexValues-tf2260967.html#a6273010
Sent from the SQLite forum at Nabble.com.


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



Re: [sqlite] SQLite Timeout question

2006-09-12 Thread Sripathi Raj

On 9/12/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:


"Sripathi Raj" <[EMAIL PROTECTED]> wrote:
> Hi,
>
>  I'm setting the sqlite_busy_timeout to 1500 millseconds using my
database
> handle (DBI). When I lock the database and try to commit, it waits for 7
or
> 8 wallclock seconds before giving up. What's the reason for this
behavior?
> Shouldn't the function return after 1.5 seconds?
>

On unix, make sure you compile with -DHAVE_USLEEP=1
--
D. Richard Hipp   <[EMAIL PROTECTED]>

This is on Windows XP.



Re: [sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Dennis Jenkins

Will Leshner wrote:

Ah. Ok. It was just a shot in the dark. I've never seen SQLite itself
change its header like that, so I suspect the culprit lies elsewhere.


Most likely, the following is not the cause of your problem, but it's 
funny:  There was once a virus that did a search and replace across the 
user's hard-drive (back in the DOS days of 20M drives) that changed all 
occurrences of "Microsoft" to "Macrosoft" or something like that.  I 
wish I remembered the details and/or the virus name.  I guess you had to 
be there.



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



[sqlite] speed of access of table in attached database

2006-09-12 Thread P Kishor

for project reasons, I may have to break out my database and store
individual tables in separate databases, ATTACH-ing them as needed.
Are there any speed penalties on tables in attached databases versus
tables _in_ a database, or is this a non-issue?

--
Puneet Kishor http://punkish.eidesis.org/
Nelson Inst. for Env. Studies, UW-Madison http://www.ies.wisc.edu/
Open Source Geospatial Foundation https://edu.osgeo.org/

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



Re: [sqlite] SQLite Timeout question

2006-09-12 Thread drh
"Sripathi Raj" <[EMAIL PROTECTED]> wrote:
> Hi,
> 
>  I'm setting the sqlite_busy_timeout to 1500 millseconds using my database
> handle (DBI). When I lock the database and try to commit, it waits for 7 or
> 8 wallclock seconds before giving up. What's the reason for this behavior?
> Shouldn't the function return after 1.5 seconds?
> 

On unix, make sure you compile with -DHAVE_USLEEP=1
--
D. Richard Hipp   <[EMAIL PROTECTED]>


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



Re: RE: [sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Will Leshner

On 9/12/06, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:



Thanks, but this application resides on a PDA and my customer is
reporting this issue on several PDA's. No search/replace operations are
being performed at a file level on these devices.


Ah. Ok. It was just a shot in the dark. I've never seen SQLite itself
change its header like that, so I suspect the culprit lies elsewhere.

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



[sqlite] SQLite Timeout question

2006-09-12 Thread Sripathi Raj

Hi,

I'm setting the sqlite_busy_timeout to 1500 millseconds using my database
handle (DBI). When I lock the database and try to commit, it waits for 7 or
8 wallclock seconds before giving up. What's the reason for this behavior?
Shouldn't the function return after 1.5 seconds?

Thanks,

Raj


RE: [sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Richard.Murphy


Thanks, but this application resides on a PDA and my customer is
reporting this issue on several PDA's. No search/replace operations are
being performed at a file level on these devices.

Richard

-Original Message-
From: Will Leshner [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, September 12, 2006 1:26 PM
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] Error: file is encrypted or is not a database

On 9/12/06, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:

> What in the world could have caused this??

Is it possible that you did some kind of global search and replace on
files on your computer and this database file accidently got snagged?


-
To unsubscribe, send email to [EMAIL PROTECTED]

-


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



Re: [sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Will Leshner

On 9/12/06, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:


What in the world could have caused this??


Is it possible that you did some kind of global search and replace on
files on your computer and this database file accidently got snagged?

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



Re: [sqlite] sqlit3_step question

2006-09-12 Thread drh
"Evans, Mitchell" <[EMAIL PROTECTED]> wrote:
> 
> We have a multithreaded application that uses a sqlite3 database for
> asset tracking.  I'm having some performance issues, and was wondering
> how best to proceed.  We're storing arbitrary blobs in the database, and
> retrieving them in a standard manner (open, prep statement,
> sqlite3_step).  Our problem is that the sqlite3_step often takes up to
> 1200 milliseconds to retrieve a blob.  Granted, the blobs may be large,
> but 1200 millis seems excessive.
> 
>  
> 
> I'd like to narrow down what's causing the problem.  Our queries, made
> by a person very familiar with SQL and optimizing SQL, seem sane to me.
> How do I narrow down if the time sink is:
> 

How large is the database file?

How many rows?

What is the schema?

What query are you running?

What OS are you running on?
--
D. Richard Hipp   <[EMAIL PROTECTED]>


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



Re: [sqlite] SQLite3 working with Visual C++.net 2003

2006-09-12 Thread Christian Smith

Abhilash Menon uttered:


After a lot of reading and experimenting, I was able to get SQLite3
working with Visual C++.net 2003.
Here is what I did

...

Built the project and it worked without any issues. If you have a
database ready you are ready to test and it works fine



Wow! You poor soul!

Thanks for reminding me why I hate developing on Windows:)





--
Abhi Menon



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

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



[sqlite] sqlit3_step question

2006-09-12 Thread Evans, Mitchell








Howdy!

 

I perused the documentation and wiki entries, and couldn’t
find an answer to this.  If it’s obvious (and in the documentation),
please feel free to tell me to RTFM and point me toward the page J

 

We have a multithreaded application that uses a sqlite3
database for asset tracking.  I’m having some performance issues, and was
wondering how best to proceed.  We’re storing arbitrary blobs in the
database, and retrieving them in a standard manner (open, prep statement,
sqlite3_step).  Our problem is that the sqlite3_step often takes up to 1200
milliseconds to retrieve a blob.  Granted, the blobs may be large, but 1200
millis seems excessive.

 

I’d like to narrow down what’s causing the
problem.  Our queries, made by a person very familiar with SQL and optimizing
SQL, seem sane to me.  How do I narrow down if the time sink is:

 

1)   The query
itself

2)   The recovery
of the blob

3)   File
collision or locking

 

Any pointers toward documents, examples, or hints on how to
narrow down the scope of the performance issue would be greatly appreciated.

 

Thanks!

 

Mitch

 


 
  
  Mitch Evans
  Senior Programmer
  
  Sony Online Entertainment
  
  
  
  
  
  
  Office:
  (858) 577-3989
Mobile: (619) 807-4422
  Email: [EMAIL PROTECTED]
  Professional Profile
  MobyGames Profile 
  
  
   
  
 
 
  
   
  
  
   
  
 


 








Re: [sqlite] Inserting Values in Bulk

2006-09-12 Thread Dennis Cote

Rich Shepard wrote:


  Yes, 'row' is the string of values.

Note, you have only got 4 columns in your column list, so you will 
get an

error if you feed in 31 columns of data.


  I've corrected this already.

You may need to extract the relevant columns using split to separate 
your

string at the commas, collecting the data for the columns you need, and
then reassembling only those columns into a new string of row data.


  This is what I thought that I did for the first three fields (a 
sequential
record ID that relates the digital record to a paper form), and the 
two text
fields. Those are inserted in individual statements. I wasn't at all 
clear

about the rest of the values; that's why I asked.

  The statement now reads:

# now get the pair-wise vote values for rows 7-34, bytes 12-67, with
dictionary lookups
pw = split_line[7:67:2]
self.cur.execute("insert into voting(pr1, pr2, pr3, pr4, \
pr5, pr6, pr7, pr8, pr9, pr10, pr11, pr12, pr13, pr14, pr15, \
pr16, pr17, pr18, pr19, pr20, pr21, pr22, pr23, pr24, pr25, \
pr26, pr27, pr28) values (DATA_MAP_7(pw))")

  If I understand your revision, I need to change the end of the above
statement to values (DATA_MAP_7(" + pw + "). Does this look better?

  

Rich,

I'm still not sure about exactly what you are trying to do, but what I 
was suggesting was building your SQL insert statement as a string in 
python by concatenating the constant part of the statement (the insert 
keyword, the table name , and the list of columns) with the variable 
part of the statement (the data for each row in your table). The + 
operator is used to concatenate strings into larger strings in python. 
Then passing your complete SQL statement to the execute method.


This was a suggestion of a quick and dirty way to get your data into a 
table since you said you already had the data for the row in a string 
variable, with columns separated by commas, and text fields delimited by 
quotes.


If that is not the case, there are better ways to put data into a table.

First, it is generally frown on to have repeated data in columns of a 
relational database. These columns should be normalized into another 
table and related to the associated record in the existing table using 
its  record id  (hence the name relational database). Instead of a table 
like this:


create table votes (
   id integer primary key,
   cat text,
   pos text,
   pr1 float,
   pr2 float,
   pr3 float,
   ...
   pr28 float
)

You should normalize the floats into a separate table. This table will 
have two columns if the order of the prn fields does not matter, or 
three if it does.


create table pr(
   vote_id integer references votes(id),
   pr float
)

or

create table pr(
   vote_id integer references votes(id),
   n integer,
   pr float
)

And your votes table will have only the first three columns.

create table votes (
   id integer primary key,
   cat text,
   pos text,
)

Now when you insert a record into the votes table, you will also insert 
28 records into the pr table. Each of these 28 records will have the 
same value for the vote_id, the value of the id just inserted into the 
votes table. If the order of the pr fields is important then you need to 
track the order in the pr table by setting the column n to match the pr 
field number as each pr value is inserted.


The following sample shows how to do this for a single CSV data row in a 
string variable row.



def dequote(s):
   if s.startswith('"') and s.endswith('"'):
  s = s[1:-1]
  s = s.replace('""', '"')
   return s

# separate fields and dequote strings from CSV row
fields = row.split(',')
fields = map(dequote, fields)
# get id of this row
id = int(fields[0])
# insert the row into the main table
cur.execute("insert into votes values(?, ?, ?)", (id, fields[1], fields[2]))
# insert the repeated pr fields into the associated pr table
for n in range(28):
   cur.execute("insert into pr values(?, ?, ?)", (id, n+1, 
float(fields[n+3]))



Even if you don't normalize your table this sample should show how to 
use parameters (the question marks in the SQL) to make your SQL clearer 
and safer (and due to statement caching in pysqlite it should also 
perform faster).


HTH
Dennis Cote




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



[sqlite] SQLite3 working with Visual C++.net 2003

2006-09-12 Thread Abhilash Menon

After a lot of reading and experimenting, I was able to get SQLite3
working with Visual C++.net 2003.
Here is what I did

Steps to use SQLite3 in VC++.net 2003


Download the source code for sqlite3 from http://www.sqlite.org/download.html
Filename: sqlite-source-3_3_7.zip
Extract these files to a folder.

Downloaded the DLL from http://www.sqlite.org/download.html
Filename: sqlitedll-3_3_7.zip
(166.80 KiB)

Extracted the contents of the zip folder
Contents:
sqlite3.dll
sqlite3.def

the dll included supposedly does not work with 2003 version of VC++

So the following file was downloaded from
http://www.arkesystems.com/Solutions/SQLite/SQLite.aspx
Filename: Sqlite.dll project
This zip file contains only sqlite3.dll
This file must replace the original dll.

The .dll and the .def file are then moved to
C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin

We need to generate a .lib file to use the dll in a program

Note: make sure mspdb71.dll is present in the above folder, else
search for it on the system and move a copy to this folder. (As I had
some trouble with getting lib.exe working)

Go to the command prompt and change the directory to
cd C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\bin

Now type the following and hit  to generate the lib file

LIB /DEF:sqlite3.def
This should generate the following files
sqlite3.exp
sqlite3.lib



Create a new project in VC++.net 2003
copy the following files of sqlite3 into the projects 'debug' folder
sqlite3.lib
sqlite3.dll


Go to Project Properties and under 'additional library directories'
add the debug folder of the project

under Linker->Input->Additional dependencies add 'sqlite3.lib'

copy 'sqlite3.h' (from the source folder which is obtained by
unzipping sqlite-source-3_3_7.zip) to the project folder.

I used the sample C code from the SQLite
website(http://www.sqlite.org/quickstart.html), only making a few
changes to make it C++ compatible.

Here is the listing of my code
// sqliteConnector.cpp : Defines the entry point for the console application.
//
#include 
using namespace std;
#include "sqlite3.h"

static int callback(void *NotUsed, int argc, char **argv, char **azColName){
 int i;
 for(i=0; i

[sqlite] Error: file is encrypted or is not a database

2006-09-12 Thread Richard.Murphy
SQLite Version: 2.8.17 (not 3)

I have a database that when I try to open it, either with the 'C'
libraries or with the sqlite.exe command-line utility, gives me the
error "file is encrypted or is not a database".

I opened the data file in a hex editor and noticed that the 48 byte
header string has been changed. The header string, which is supposed to
be "** This file contains an SQLite 2.1 database **" is instead, "**
This file contains an sqlite 2.1 database **".

The difference between the good and bad header is that the "SQL" in
"SQLite" is all lower case. If I change the lower case "sql" to "SQL",
the file opens and all data is intact!  Looking at the source code in
btree.c, line 794, the error returned is SQLITE_NOTADB when the
comparison fails, which is exactly the error that I am seeing reported.

What in the world could have caused this??

Thanks for any insight.

Richard


Re: Re: [sqlite] met "ARM7TDMI raised an exception,data abort" when executing sqlite3Parser() in ARM environment

2006-09-12 Thread Christian Smith

[EMAIL PROTECTED] uttered:


I don't think NULL callback and error pointer will be the reason. Because I've 
seen this kind of usage in the list for several times.

Anyway, I'll try later and report the result to the list.

If it is a misaligned-pointer problem, what can I do?



You say you are using an OS-less platform. Check the alignment of pointers 
returned by your own malloc() functions. Not sure of the alignment 
requirements of ARM, but I presume it's 32-bit.


Do you handle the pointer exception? Try dumping the contents of the 
pointer. If it's not 32-bit aligned, it's likely an alignment issue.





I don't make any change to the sqlite source code, how should this happen? I 
can run it correctly on PC(windows XP), why can't in an embedded environment? 
I'm confused...




On 9/11/06, Sarah <[EMAIL PROTECTED]> wrote:

During the execution of a test program in an embedded environment,
after it goes into sqlite3_exec()-->sqlite3_prepare()-->sqlite3RunParser(&sParse, 
zSql, &zErrMsg),
the debugger pops "the ARM7TDMI raised an exception,data abort" when the 
following sentence is executed(bold and underlined):


It can be a misaligned pointer.
Try to check what is the value of r0.

Also, try to give it a real callback and error pointer. Just to check
it's not a bug of sqlite failing to check the parameters are NULL
(although I would not bet that it's the reason).


Regards,
~Nuno Lucas

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




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

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



RE: [sqlite] building sqlite.lib

2006-09-12 Thread Denis Povshedny
Hi Rick!

The 'LIB' itself is a command for building library from command line.
But if you are using VisualC++ IDE, enter these data as an linker's
commandline option.

It may be not easy to find out, so there's a screenshot from my
computer. Please note I use MSVC 7.1

-Original Message-
From: Richard Stern [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, September 12, 2006 3:53 PM
To: sqlite-users@sqlite.org
Subject: RE: [sqlite] building sqlite.lib


 
> Download the source with the .DEF file, then run:
> 
> LIB /DEF:sqlite.def
> 
> That will make a lib file.

Pardon my ignorance, but run how? What sort of command is that? I tried
in the dos shell that obviously didn't work, oh I'm running win XP if
that makes a difference.

Where do I run this command?

Rick




-
To unsubscribe, send email to [EMAIL PROTECTED]

-

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

Re: [sqlite] building sqlite.lib

2006-09-12 Thread Cory Nelson

Look in the start menu, you want the Visual Studio Command Prompt.

On 9/12/06, Richard Stern <[EMAIL PROTECTED]> wrote:


> Download the source with the .DEF file, then run:
>
> LIB /DEF:sqlite.def
>
> That will make a lib file.

Pardon my ignorance, but run how? What sort of command is that? I tried in
the dos shell that obviously didn't work, oh I'm running win XP if that
makes a difference.

Where do I run this command?

Rick



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





--
Cory Nelson
http://www.int64.org

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



RE: [sqlite] building sqlite.lib

2006-09-12 Thread Richard Stern
 
> Download the source with the .DEF file, then run:
> 
> LIB /DEF:sqlite.def
> 
> That will make a lib file.

Pardon my ignorance, but run how? What sort of command is that? I tried in
the dos shell that obviously didn't work, oh I'm running win XP if that
makes a difference.

Where do I run this command?

Rick



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



RE: [sqlite] met "ARM7TDMI raised an exception,data abort" when executing sqlite3Parser() in ARM environment

2006-09-12 Thread Barrass, Richard
Hi

We have sqlite (v3.3.7) running on an os-less ARM based platform - we
use MINGW cross compilers (GCC3.4.4) - from CodeSourcery.

There was an issue earlier on that seems to be an issue with 64 bit
support - we switched off the 64bit support in the compilation of the
sqlite library and this for now has got the data base up and running on
our platform.

Richard



-Original Message-
From: Nuno Lucas [mailto:[EMAIL PROTECTED] 
Sent: 11 September 2006 21:12
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] met "ARM7TDMI raised an exception,data abort" when
executing sqlite3Parser() in ARM environment


[forgot to reply to the list]

-- Forwarded message --
From: Nuno Lucas <[EMAIL PROTECTED]>
Date: Sep 11, 2006 9:07 PM
Subject: Re: Re: [sqlite] met "ARM7TDMI raised an exception,data abort"
when executing sqlite3Parser() in ARM environment
To: [EMAIL PROTECTED]


On 9/11/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
> I don't think NULL callback and error pointer will be the reason. 
> Because I've seen this kind of usage in the list for several times.

As I said earlier, I don't think this is the reason also. Just one more
thing you could check.

> Anyway, I'll try later and report the result to the list.
>
> If it is a misaligned-pointer problem, what can I do?
>
> I don't make any change to the sqlite source code, how should this 
> happen? I can run it correctly on PC(windows XP), why can't in an 
> embedded environment? I'm confused...

You are aware they are completely different architectures, don't you?

You also didn't specify what OS you are running, which could make it
easier to get help from other experienced programmers for your platform
(if you are using CodeWarrior I would guess it's not Windows CE).

A misaligned-pointer can never occur on Windows (desktop editions, not
Windows CE), because Windows only runs on the Intel x86 processor
family, which mask that kind of things from you (although you usually
have a performance hit).

Basically it means you are accessing memory that is not aligned to the
minimum granularity the processor supports (which depends on the
processor and processor mode, but usually is 32 bits - 4 bytes - for
32-bits cpus, 64 bits - 8 bytes - for 64-bits cpus, etc).

I don't know if that is your case, but I have seen it before on Windows
CE (using a StrongArm processor) and because there aren't so many people
using SQLite with those processors, the code path is not so much tested
as the x86 case (which doesn't trigger a cpu exception, only a
performance hit).

It's up to you to confirm this is the case, but there are other things
which can be wrong, like little/big endian problems, compiler bugs
(recent platforms don't have so much testing as older ones), bad
compiler/linker options, stack overflows (because in embedded systems
you usually have a much lower default stack size), etc.

Without more info that's all I can say.


Regards,
~Nuno Lucas


-
To unsubscribe, send email to [EMAIL PROTECTED]

-

_

This message is for the designated recipient only and may contain privileged, 
proprietary, or otherwise private information. If you have received it in 
error, please notify the sender immediately and delete the original. Any other 
use of the email by you is prohibited.

Dansk - Deutsch - Espanol - Francais - Italiano - Japanese - Nederlands - Norsk 
- Portuguese - Svenska: www.cardinalhealth.com/legal/email

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