Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread Martin Jenkins

[EMAIL PROTECTED] wrote:

> in the older version of TCL you have installed, not in SQLite

Hmm. It's definitely a Tcl bug, but I'm not convinced about it being in 
the older Tcl that I have - the SPARC machine that fails corrupt2.test 
has a newer version than the PC that passes.


[later]

I built tcl8.4.14 and tcl8.5a5 on both machines and the corrupt2.test 
fails identically under both versions. There were some new failures in 
8.5a5; a couple of printf.test tests fail because of a minor formatting 
mismatch and a tclsqlite.test fails because of a new error message.


I built tcl8.4.9 from source on both machines and all tests pass on both.

So, the failure is a regression in Tcl sometime between 8.4.9 and 
8.4.14. I'm going to wimp out and file a bug report rather than spend 
any more time pinning down the exact version.


Martin

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



RE: [sqlite] help with syntax

2007-02-13 Thread Anderson, James H \(IT\)
Thanks, Dennis, I'll try that. Yes, "*=" means "LEFT JOIN" in sybase
syntax. 

-Original Message-
From: Dennis Cote [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, February 13, 2007 4:55 PM
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] help with syntax

Anderson, James H (IT) wrote:
> I have the following sybase query (a left join) that I'm having
trouble
> translating into the "LEFT JOIN" syntax. Any help appreciated.
>
> Thanks,
> jim.
>
>
> create table tmpRR_ML as
> select
> b.ratingCodeas ratingCode,
> a.CDSpreadCurve as CDSpreadCurve
>   from tmpRR a,
>MasterList b,
>crRefRating c
>  where b.dunsNumber = b.ultimateDuns;
>and a.Credit_Ultimate_Party_Id *= b.dunsNumber
>and b.ratingCode *= c.rating;
> 
>
> NOTICE: If received in error, please destroy and notify sender. Sender
does not intend to waive confidentiality or privilege. Use of this email
is prohibited when received in error.
>
>   
James,

I suspect this should be the following for SQLite, but I'm just guessing

at the *= syntax from sybase.

create table tmpRR_ML as
select
b.ratingCodeas ratingCode,
a.CDSpreadCurve as CDSpreadCurve
  from tmpRR a 
left join MasterList b on a.Credit_Ultimate_Party_Id = b.dunsNumber
left join crRefRating c on b.ratingCode = c.rating
 where b.dunsNumber = b.ultimateDuns;

HTH
Dennis Cote





-
To unsubscribe, send email to [EMAIL PROTECTED]

-


NOTICE: If received in error, please destroy and notify sender. Sender does not 
intend to waive confidentiality or privilege. Use of this email is prohibited 
when received in error.

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



Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread Martin Jenkins

[EMAIL PROTECTED] wrote:

I get the same problem on OS-X.  But it appears to be a bug
in the older version of TCL you have installed, not in SQLite
It's definitely a bug in Tcl. I'll post the log for posterity and get a 
newer version.


[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "Hello SQLite" >  fred
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "Hello SQLite" >> fred
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "Hello SQLite" >> fred
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "Hello SQLite" >> fred
[EMAIL PROTECTED]:~/dev/sqlite/bld$ cat fred
Hello SQLite
Hello SQLite
Hello SQLite
Hello SQLite
[EMAIL PROTECTED]:~/dev/sqlite/bld$ cat tcl.test
source ../test/tester.tcl

do_test test_tcl {
 set f [open fred a]
 seek $f 8 start
 puts $f blah
 close $f
} {}
[EMAIL PROTECTED]:~/dev/sqlite/bld$ ./testfixture tcl.test
test_tcl... Ok
[EMAIL PROTECTED]:~/dev/sqlite/bld$ cat fred
Hello SQLite
Hello SQLite
Hello SQLite
Hello SQLite
blah

Martin

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



Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread drh
Martin Jenkins <[EMAIL PROTECTED]> wrote:
> Build fails on Solaris 9/Ultra5/csw tools
> Can't find 'ar' so substitutes and attempts to fun 'false'
> TMP FIX: AR=gar ../configure...
> 
> corrupt2 tests fail on Solaris 9/Ultra5/csw tools
>  Test file is not actually corrupted (ie altered at all AFAICS)
> 

I get the same problem on OS-X.  But it appears to be a bug
in the older version of TCL you have installed, not in SQLite
itself.  Nothing to worry about.  Thanks for reporting it, though.
--
D. Richard Hipp  <[EMAIL PROTECTED]>


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



Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread Martin Jenkins

Martin Jenkins wrote:

corrupt2 tests fail on Solaris 9/Ultra5/csw tools
Test file is not actually corrupted (ie altered at all AFAICS)
Exact same failure on a fresh Debian 3.1r4 install too. All other tests 
passed OK.


[EMAIL PROTECTED]:~/dev/sqlite/bld$ uname -a
Linux ultra5b 2.4.27-3-sparc64 #1 Thu Sep 14 07:31:38 UTC 2006 sparc64 
GNU/Linux

[EMAIL PROTECTED]:~/dev/sqlite/bld$ ./testfixture ../test/corrupt2.test
corrupt2-1.1... Ok
corrupt2-1.2...
Expected: [1 {file is encrypted or is not a database}]
Got: [0 {table abc abc 2 {CREATE TABLE abc(a, b, c)}}]
corrupt2-1.3...
Expected: [1 {file is encrypted or is not a database}]
Got: [0 {table abc abc 2 {CREATE TABLE abc(a, b, c)}}]
corrupt2-1.4...
Expected: [1 {database disk image is malformed}]
Got: [0 {table abc abc 2 {CREATE TABLE abc(a, b, c)}}]
corrupt2-1.5...
Expected: [1 {database disk image is malformed}]
Got: [0 {table abc abc 2 {CREATE TABLE abc(a, b, c)}}]
Thread-specific data deallocated properly
4 errors out of 6 tests
Failures on these tests: corrupt2-1.2 corrupt2-1.3 corrupt2-1.4 corrupt2-1.5

The corruption tests do appear to work (where v3.2.1 does does not), so 
as I said earlier it appears the test harness is not actually corrupting 
the file. I checked the file contents (with a hex viewer) on S9 but 
didn't try manually corrupting it.


[EMAIL PROTECTED]:~/dev/sqlite/bld$ sqlite3 -version
3.2.1
[EMAIL PROTECTED]:~/dev/sqlite/bld$ ./sqlite3 -version
3.3.13

NB I don't exactly replicate the real tests below.

[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | sqlite3 
corrupt.db

ok
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | ./sqlite3 
corrupt.db

ok

[EMAIL PROTECTED]:~/dev/sqlite/bld$ cp test.db corrupt.db ; dd if=/dev/random 
of=corrupt.db bs=1 count=4 skip=8

4+0 records in
4+0 records out
4 bytes transferred in 0.001219 seconds (3281 bytes/sec)
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | sqlite3 
corrupt.db

ok
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | ./sqlite3 
corrupt.db

SQL error near line 1: file is encrypted or is not a database

[EMAIL PROTECTED]:~/dev/sqlite/bld$ cp test.db corrupt.db ; dd if=/dev/random 
of=corrupt.db bs=1 count=4 skip=100

4+0 records in
4+0 records out
4 bytes transferred in 0.001105 seconds (3620 bytes/sec)
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | sqlite3 
corrupt.db

ok
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | ./sqlite3 
corrupt.db

SQL error near line 1: file is encrypted or is not a database

[EMAIL PROTECTED]:~/dev/sqlite/bld$ cp test.db corrupt.db ; dd if=/dev/random 
of=corrupt.db bs=1 count=4 skip=200

4+0 records in
4+0 records out
4 bytes transferred in 0.001141 seconds (3506 bytes/sec)
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | sqlite3 
corrupt.db

ok
[EMAIL PROTECTED]:~/dev/sqlite/bld$ echo "pragma integrity_check;" | ./sqlite3 
corrupt.db

SQL error near line 1: file is encrypted or is not a database

Martin


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



Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread Martin Jenkins

Martin Jenkins wrote:

Build fails on Solaris 9/Ultra5/csw tools
   Can't find 'ar' so substitutes and attempts to fun 'false'
   TMP FIX: AR=gar ../configure...
Forgot - fdatasync is in librt so most of the executables need $(TLIBS)  
added to the end of their recipe.


Martin

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



Re: [sqlite] SQLite-3.3.13

2007-02-13 Thread Martin Jenkins

Build fails on Solaris 9/Ultra5/csw tools
   Can't find 'ar' so substitutes and attempts to fun 'false'
   TMP FIX: AR=gar ../configure...

corrupt2 tests fail on Solaris 9/Ultra5/csw tools
Test file is not actually corrupted (ie altered at all AFAICS)

Not sure how many people (outside of Sun) are using sqlite3 on S9, but 
I'd fired the box up for something else so I thought I'd give it a go. 
The first is obviously down to the age and unmaintained status of the 
autoconf stuff, but the second...  :-/


Martin


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



Re: [sqlite] help with syntax

2007-02-13 Thread Dennis Cote

Anderson, James H (IT) wrote:

I have the following sybase query (a left join) that I'm having trouble
translating into the "LEFT JOIN" syntax. Any help appreciated.

Thanks,
jim.


create table tmpRR_ML as
select
b.ratingCodeas ratingCode,
a.CDSpreadCurve as CDSpreadCurve
  from tmpRR a,
   MasterList b,
   crRefRating c
 where b.dunsNumber = b.ultimateDuns;
   and a.Credit_Ultimate_Party_Id *= b.dunsNumber
   and b.ratingCode *= c.rating;


NOTICE: If received in error, please destroy and notify sender. Sender does not 
intend to waive confidentiality or privilege. Use of this email is prohibited 
when received in error.

  

James,

I suspect this should be the following for SQLite, but I'm just guessing 
at the *= syntax from sybase.


create table tmpRR_ML as
select
b.ratingCodeas ratingCode,
a.CDSpreadCurve as CDSpreadCurve
 from tmpRR a 
   left join MasterList b on a.Credit_Ultimate_Party_Id = b.dunsNumber

   left join crRefRating c on b.ratingCode = c.rating
where b.dunsNumber = b.ultimateDuns;

HTH
Dennis Cote




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



Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread Dennis Cote

jose isaias cabrera wrote:



So, there is on way of doing it in one call/instruction as I 
previously exampled, correct?  I will have to do them in many calls, 
correct?




Jose,

You can do it in one API call if you put all the update statements into 
a single string. You will probably also want to add a begin and end 
around the updates so they are all done atomically in the database. You 
can then pass this string containing multiple statement to 
sqlite3_exec() and it will execute all the statements one after the other.


UPDATE table SET
  ID = '88' if not = '88',
  parent = '1171291314642' if null,
  children = '',
  login = 'blah',
  notes = 'blah-blah' if null,
  status = 'o'
  WHERE ProjID = '88';

Would become

string sql  =   "begin;"
   "update table "
   "   set ID = '88', children = '', login = 'blah', status 
= 'o' "   
   "   where ProjId = '88';"

   "update table "
   "   set parent = '1171291314642' "
   "   where ProjID = '88' AND parent IS NULL;"
   "update table "
   "   set notes = 'blah-blah' "
   "   where ProjID = '88' AND notes IS NULL;"
   "commit;";
  
int rc = sqlite3_exec(db, sql.c_str(), 0, 0, 0);


Each update must have the same condition, but it can set multiple 
fields. The sqlite3_exec() function will execute all the SQL statements 
in a string in one call.


HTH
Dennis Cote
 



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



Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread Clark Christensen
Maybe coalesce() would work just as well:

> UPDATE table SET
>  ID = '88',
>  parent = (SELECT CASE WHEN parent IS NULL THEN '1171291314642'
> END FROM table WHERE ProjID = '88'),
> ..
>  WHERE ProjID = '88';

becomes:

UPDATE table SET
 ID = '88',
 parent = coalesce(parent, '1171291314642'),
..
 WHERE ProjID = '88';

Since someone else pointed out the value of coalesce() for me recently, I'll 
share the advice.


 -Clark

- Original Message 
From: P Kishor <[EMAIL PROTECTED]>
To: sqlite-users@sqlite.org
Sent: Tuesday, February 13, 2007 12:29:25 PM
Subject: Re: [sqlite] UPDATE base on certain values

On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:
>
> "P Kishor" wrote,
>
> > On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:
> >>
> >> Greetings!
> >>
> >> I would like to be able to update certain columns based on their value.
> >> I
> >> was looking at "ON CONFLICT", but I could not understand it nor I could
> >> not
> >> find any examples quickly, so I say, "heck, that's what the list is
> >> for..."
> >> :-)
> >>
> >> What I would like is to do something like this,
> >>
> >> UPDATE table SET
> >> ID = '88' if not = '88',
> >> parent = '1171291314642' if null,
> >> children = '',
> >> login = 'blah',
> >> notes = 'blah-blah' if null,
> >> status = 'o'
> >> WHERE ProjID = '88';
> >>
> >
> > Well, if you
> > UPDATE table
> > SET ID = '88'
> > WHERE ProjID = '88'
> >
> > it will set it to 88 whether or not it is 88. Problem solved. Also
> >
> > UPDATE table
> > SET parent = '1171291314642'
> > WHERE ProjID = '88' AND parent IS NULL
> >
> > will do the appropriate thing only if parent is null. Else, it will
> > leave it alone. In any case, WHERE clause is the correct place to put
> > your constraints, not the SET clause, unless you write functions that
> > return the desired value to be SET.
>
> So, there is on way of doing it in one call/instruction as I previously
> exampled, correct?  I will have to do them in many calls, correct?


Not that I know of. You want to update different columns (your SET)
based on different criteria (your WHERE)... remember that your
constraint, no matter how complicated it is, acts on the entire set of
values, not on individual elements of that set. Perhaps you could do
nested SELECT queries, but they would be so much more messy and error
prone than multiple calls. You could try something like

UPDATE table SET
 ID = '88',
 parent = (SELECT CASE WHEN parent IS NULL THEN '1171291314642'
END FROM table WHERE ProjID = '88'),
..
 WHERE ProjID = '88';

(My CASE clause syntax is probably incorrect, but you get the idea...
there are also  IFNULL and NOTNULL operators). But why? It will be so
convoluted and messy.

Others probably have better ideas.

-- 
Puneet Kishor http://punkish.eidesis.org/
Nelson Inst. for Env. Studies, UW-Madison http://www.nelson.wisc.edu/
Open Source Geospatial Foundation http://www.osgeo.org/education/
-
collaborate, communicate, compete
=

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





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



[sqlite] Re: UPDATE base on certain values

2007-02-13 Thread Igor Tandetnik

jose isaias cabrera <[EMAIL PROTECTED]>
wrote: 
I would like is to do something like this,


UPDATE table SET
   ID = '88' if not = '88',


Just have

ID = '88'

Overwriting a value with the same value is harmless.


   parent = '1171291314642' if null,


parent = ifnull(parent, '1171291314642')

Same idea. Unless "parent" is null, this just does parent=parent


   children = '',
   login = 'blah',
   notes = 'blah-blah' if null,
   status = 'o'
   WHERE ProjID = '88';


Igor Tandetnik

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



Re: [sqlite] Atomically creating a database and bootstrapping its tables

2007-02-13 Thread Dennis Cote

Ron Stevens wrote:


That solves the problem of two processes bootstrapping the database,
but is it possible for the second process to open the database while
the first is in the process of creating it (creating the header pages,
the system tables, etc) and view the database as corrupt since it
isn't fully created yet? I imagine there is at least a small window
between when the file is first created and when the file lock is
acquired on it, but I'm wondering how big that window is (or does it
not exist?).


Ron,

There is no window of opportunity for corruption. Before it can read a 
process must acquire a read lock on the database file. This will only be 
granted if no other process holds a write lock. A second process can 
open the database connection while the first is initializing the 
database, but because the first process is doing the initialization 
inside an exclusive transaction it will hold the write lock, and 
therefore the second process will get a BUSY error if it tries to read 
(or write) the database.


HTH
Dennis Cote

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



Re: [sqlite] Re: Atomically creating a database and bootstrapping its tables

2007-02-13 Thread Dennis Cote

Steven E. Harris wrote:

Dennis Cote <[EMAIL PROTECTED]> writes:

  

   if the user version is not zero



ITYM "is zero".

  

Oops...

Yes, you are correct. It should be "if the user version is zero". At 
least I now know somebody is paying attention. :-)


Dennis Cote



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



[sqlite] help with syntax

2007-02-13 Thread Anderson, James H \(IT\)
I have the following sybase query (a left join) that I'm having trouble
translating into the "LEFT JOIN" syntax. Any help appreciated.

Thanks,
jim.


create table tmpRR_ML as
select
b.ratingCodeas ratingCode,
a.CDSpreadCurve as CDSpreadCurve
  from tmpRR a,
   MasterList b,
   crRefRating c
 where b.dunsNumber = b.ultimateDuns;
   and a.Credit_Ultimate_Party_Id *= b.dunsNumber
   and b.ratingCode *= c.rating;


NOTICE: If received in error, please destroy and notify sender. Sender does not 
intend to waive confidentiality or privilege. Use of this email is prohibited 
when received in error.


Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread jose isaias cabrera



"P Kishor" wrote,


On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:


"P Kishor" wrote,

> On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:
>>
>> Greetings!
>>
>> I would like to be able to update certain columns based on their 
>> value.

>> I
>> was looking at "ON CONFLICT", but I could not understand it nor I 
>> could

>> not
>> find any examples quickly, so I say, "heck, that's what the list is
>> for..."
>> :-)
>>
>> What I would like is to do something like this,
>>
>> UPDATE table SET
>> ID = '88' if not = '88',
>> parent = '1171291314642' if null,
>> children = '',
>> login = 'blah',
>> notes = 'blah-blah' if null,
>> status = 'o'
>> WHERE ProjID = '88';
>>
>
> Well, if you
> UPDATE table
> SET ID = '88'
> WHERE ProjID = '88'
>
> it will set it to 88 whether or not it is 88. Problem solved. Also
>
> UPDATE table
> SET parent = '1171291314642'
> WHERE ProjID = '88' AND parent IS NULL
>
> will do the appropriate thing only if parent is null. Else, it will
> leave it alone. In any case, WHERE clause is the correct place to put
> your constraints, not the SET clause, unless you write functions that
> return the desired value to be SET.

So, there is on way of doing it in one call/instruction as I previously
exampled, correct?  I will have to do them in many calls, correct?



Not that I know of. You want to update different columns (your SET)
based on different criteria (your WHERE)... remember that your
constraint, no matter how complicated it is, acts on the entire set of
values, not on individual elements of that set. Perhaps you could do
nested SELECT queries, but they would be so much more messy and error
prone than multiple calls. You could try something like

UPDATE table SET
ID = '88',
parent = (SELECT CASE WHEN parent IS NULL THEN '1171291314642'
END FROM table WHERE ProjID = '88'),
..
WHERE ProjID = '88';

(My CASE clause syntax is probably incorrect, but you get the idea...
there are also  IFNULL and NOTNULL operators). But why? It will be so
convoluted and messy.

Others probably have better ideas.


thanks.  You have done your deed for the day. .-)

josé 



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



Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread P Kishor

On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:


"P Kishor" wrote,

> On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:
>>
>> Greetings!
>>
>> I would like to be able to update certain columns based on their value.
>> I
>> was looking at "ON CONFLICT", but I could not understand it nor I could
>> not
>> find any examples quickly, so I say, "heck, that's what the list is
>> for..."
>> :-)
>>
>> What I would like is to do something like this,
>>
>> UPDATE table SET
>> ID = '88' if not = '88',
>> parent = '1171291314642' if null,
>> children = '',
>> login = 'blah',
>> notes = 'blah-blah' if null,
>> status = 'o'
>> WHERE ProjID = '88';
>>
>
> Well, if you
> UPDATE table
> SET ID = '88'
> WHERE ProjID = '88'
>
> it will set it to 88 whether or not it is 88. Problem solved. Also
>
> UPDATE table
> SET parent = '1171291314642'
> WHERE ProjID = '88' AND parent IS NULL
>
> will do the appropriate thing only if parent is null. Else, it will
> leave it alone. In any case, WHERE clause is the correct place to put
> your constraints, not the SET clause, unless you write functions that
> return the desired value to be SET.

So, there is on way of doing it in one call/instruction as I previously
exampled, correct?  I will have to do them in many calls, correct?



Not that I know of. You want to update different columns (your SET)
based on different criteria (your WHERE)... remember that your
constraint, no matter how complicated it is, acts on the entire set of
values, not on individual elements of that set. Perhaps you could do
nested SELECT queries, but they would be so much more messy and error
prone than multiple calls. You could try something like

UPDATE table SET
ID = '88',
parent = (SELECT CASE WHEN parent IS NULL THEN '1171291314642'
END FROM table WHERE ProjID = '88'),
..
WHERE ProjID = '88';

(My CASE clause syntax is probably incorrect, but you get the idea...
there are also  IFNULL and NOTNULL operators). But why? It will be so
convoluted and messy.

Others probably have better ideas.

--
Puneet Kishor http://punkish.eidesis.org/
Nelson Inst. for Env. Studies, UW-Madison http://www.nelson.wisc.edu/
Open Source Geospatial Foundation http://www.osgeo.org/education/
-
collaborate, communicate, compete
=

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



Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread jose isaias cabrera


"P Kishor" wrote,


On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:


Greetings!

I would like to be able to update certain columns based on their value. 
I
was looking at "ON CONFLICT", but I could not understand it nor I could 
not
find any examples quickly, so I say, "heck, that's what the list is 
for..."

:-)

What I would like is to do something like this,

UPDATE table SET
ID = '88' if not = '88',
parent = '1171291314642' if null,
children = '',
login = 'blah',
notes = 'blah-blah' if null,
status = 'o'
WHERE ProjID = '88';



Well, if you
UPDATE table
SET ID = '88'
WHERE ProjID = '88'

it will set it to 88 whether or not it is 88. Problem solved. Also

UPDATE table
SET parent = '1171291314642'
WHERE ProjID = '88' AND parent IS NULL

will do the appropriate thing only if parent is null. Else, it will
leave it alone. In any case, WHERE clause is the correct place to put
your constraints, not the SET clause, unless you write functions that
return the desired value to be SET.


So, there is on way of doing it in one call/instruction as I previously 
exampled, correct?  I will have to do them in many calls, correct?



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



Re: [sqlite] UPDATE base on certain values

2007-02-13 Thread P Kishor

On 2/13/07, jose isaias cabrera <[EMAIL PROTECTED]> wrote:


Greetings!

I would like to be able to update certain columns based on their value.  I
was looking at "ON CONFLICT", but I could not understand it nor I could not
find any examples quickly, so I say, "heck, that's what the list is for..."
:-)

What I would like is to do something like this,

UPDATE table SET
ID = '88' if not = '88',
parent = '1171291314642' if null,
children = '',
login = 'blah',
notes = 'blah-blah' if null,
status = 'o'
WHERE ProjID = '88';



Well, if you
UPDATE table
SET ID = '88'
WHERE ProjID = '88'

it will set it to 88 whether or not it is 88. Problem solved. Also

UPDATE table
SET parent = '1171291314642'
WHERE ProjID = '88' AND parent IS NULL

will do the appropriate thing only if parent is null. Else, it will
leave it alone. In any case, WHERE clause is the correct place to put
your constraints, not the SET clause, unless you write functions that
return the desired value to be SET.


--
Puneet Kishor http://punkish.eidesis.org/
Nelson Inst. for Env. Studies, UW-Madison http://www.nelson.wisc.edu/
Open Source Geospatial Foundation http://www.osgeo.org/education/
-
collaborate, communicate, compete
=

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



[sqlite] UPDATE base on certain values

2007-02-13 Thread jose isaias cabrera


Greetings!

I would like to be able to update certain columns based on their value.  I 
was looking at "ON CONFLICT", but I could not understand it nor I could not 
find any examples quickly, so I say, "heck, that's what the list is for..." 
:-)


What I would like is to do something like this,

UPDATE table SET
   ID = '88' if not = '88',
   parent = '1171291314642' if null,
   children = '',
   login = 'blah',
   notes = 'blah-blah' if null,
   status = 'o'
   WHERE ProjID = '88';

Will anyone feel the love today and tell me if this is possible?  Or just a 
simple example will be the deed of the day.


thanks,

josé


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



RE: [sqlite] Atomically creating a database and bootstrapping its tables

2007-02-13 Thread Noah Hart
Why not create it under a random name, and then rename after creation?

Noah Hart
 

-Original Message-
From: Ron Stevens [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, February 13, 2007 10:59 AM
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] Atomically creating a database and bootstrapping
its tables

> No, you have to do that in your application.
>
> In pseudo code your create function could do this:
>
> open the database file
> begin an exclusive transaction (since you may need to write to 
> initialize the tables)
> read the user_version
> if the user version is not zero
>create the tables (read SQL script into a string and pass the 
> string to sqlite3_exec)
>set the user version to a non zero value
> endif
> commit the transaction
>
> Only one process will succeed in getting the write lock while opening 
> the transaction. That process will create the tables and set the 
> user_version so no other process will try to reinitialize the tables
latter.

That solves the problem of two processes bootstrapping the database, but
is it possible for the second process to open the database while the
first is in the process of creating it (creating the header pages, the
system tables, etc) and view the database as corrupt since it isn't
fully created yet? I imagine there is at least a small window between
when the file is first created and when the file lock is acquired on it,
but I'm wondering how big that window is (or does it not exist?).


-
To unsubscribe, send email to [EMAIL PROTECTED]

-




CONFIDENTIALITY NOTICE: 
This message may contain confidential and/or privileged information. If you are 
not the addressee or authorized to receive this for the addressee, you must not 
use, copy, disclose, or take any action based on this message or any 
information herein. If you have received this message in error, please advise 
the sender immediately by reply e-mail and delete this message. Thank you for 
your cooperation.




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



Re: [sqlite] Atomically creating a database and bootstrapping its tables

2007-02-13 Thread Ron Stevens

No, you have to do that in your application.

In pseudo code your create function could do this:

open the database file
begin an exclusive transaction (since you may need to write to
initialize the tables)
read the user_version
if the user version is not zero
   create the tables (read SQL script into a string and pass the
string to sqlite3_exec)
   set the user version to a non zero value
endif
commit the transaction

Only one process will succeed in getting the write lock while opening
the transaction. That process will create the tables and set the
user_version so no other process will try to reinitialize the tables latter.


That solves the problem of two processes bootstrapping the database,
but is it possible for the second process to open the database while
the first is in the process of creating it (creating the header pages,
the system tables, etc) and view the database as corrupt since it
isn't fully created yet? I imagine there is at least a small window
between when the file is first created and when the file lock is
acquired on it, but I'm wondering how big that window is (or does it
not exist?).

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



[sqlite] Re: Atomically creating a database and bootstrapping its tables

2007-02-13 Thread Steven E. Harris
Dennis Cote <[EMAIL PROTECTED]> writes:

>if the user version is not zero

ITYM "is zero".

-- 
Steven E. Harris

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



[sqlite] SQLite-3.3.13

2007-02-13 Thread Rich Shepard

  Builds, installs, and works in Slackware-11.0.

Rich

--
Richard B. Shepard, Ph.D.   |The Environmental Permitting
Applied Ecosystem Services, Inc.|  Accelerator(TM)
 Voice: 503-667-4517  Fax: 503-667-8863

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



RE: [sqlite] Version 3.3.13

2007-02-13 Thread Noah Hart
3.3.13 fails to link with SQLITE_OMIT_TRIGGER defined.

Regards,

Noah 

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of
snowcrash+sqlite
Sent: Tuesday, February 13, 2007 7:52 AM
To: sqlite-users@sqlite.org
Subject: Re: [sqlite] Version 3.3.13

hi,

> SQLite version 3.3.13 is now available in the usual place:
...
> As always, please let me know if you find any problems.

building 3.3.13 on osx, all's seemingly well, except the process still
fails to build/install one file,

  % cd /usr/ports/sqlite_build
  % ls doc/whentouse.html
/usr/local/bin/ls: cannot access doc/whentouse.html: No such
file or directory

which is easily remedied,

  % tclsh ../sqlite-3.3.13/www/whentouse.tcl > doc/whentouse.html
  % ls doc/whentouse.html
doc/whentouse.html


-
To unsubscribe, send email to [EMAIL PROTECTED]

-




CONFIDENTIALITY NOTICE: 
This message may contain confidential and/or privileged information. If you are 
not the addressee or authorized to receive this for the addressee, you must not 
use, copy, disclose, or take any action based on this message or any 
information herein. If you have received this message in error, please advise 
the sender immediately by reply e-mail and delete this message. Thank you for 
your cooperation.




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



Re: [sqlite] Re: New (ish) to C== and new to SQLite error with prepare.

2007-02-13 Thread Dan Kennedy
On Tue, 2007-02-13 at 16:18 +, Paul Simpson wrote:
> rc = (sqlStepAdd)();

rc = (sqlStepAdd)(pStmt);


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



Re: [sqlite] Re: New (ish) to C== and new to SQLite error with prepare.

2007-02-13 Thread Paul Simpson

> Paul Simpson <[EMAIL PROTECTED]>
> wrote:
>> sqlite3_stmt **ppStmt;
>> const char **pzTail;
>>
>> rc = (sqlPrepareAdd)(newdb,
>> getDBVersion.c_str(),getDBVersion.length(),ppStmt,pzTail);
>
> Make it
>
> sqlite3_stmt* pStmt;
> const char* pzTail;
> rc = (sqlPrepareAdd)(newdb,
>   getDBVersion.c_str(),getDBVersion.length(), , );
>
> When you pass in pointers, they should actually point to a valid
> locaction in memory.
>
> Igor Tandetnik
>
Thanks for that :-)

Now I have a further problem, the line

rc = (sqlStepAdd)();

is returning 21, which (I think) means SQLITE_MISUSE

Any ideas?

-- 
Paul



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



[sqlite] weird sqlite sum(length())

2007-02-13 Thread Duncan Mac-Vicar Prett

Hi!

I have a weird result of sum(length()).  have a table called files and a 
column called name.

sqlite> select count(name) from files;
2840491
sqlite> select count(distinct name) from files;
890373

As you see there are files with the same name.

I want to sum the length of the names:

sqlite> select sum(length(name)) from files;
39429686
sqlite> select sum(length(distinct name)) from files;
39429686

I get the same result.

Looking at the generated vm opcodes for this query, the interpreter generates 
the same code for both.

If you select count(name) of the column, the difference seems to be that when 
you select count (distinct name) there is an extra instruction:

2|OpenEphemeral|1|0|keyinfo(1,BINARY)

Any clues?
regards
Duncan

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



Re: [sqlite] Version 3.3.13

2007-02-13 Thread snowcrash+sqlite

hi,


SQLite version 3.3.13 is now available in the usual place:

...

As always, please let me know if you find any problems.


building 3.3.13 on osx, all's seemingly well, except the process still
fails to build/install one file,

 % cd /usr/ports/sqlite_build
 % ls doc/whentouse.html
/usr/local/bin/ls: cannot access doc/whentouse.html: No such file or 
directory

which is easily remedied,

 % tclsh ../sqlite-3.3.13/www/whentouse.tcl > doc/whentouse.html
 % ls doc/whentouse.html
doc/whentouse.html

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



[sqlite] Ticket #2060: Table references enclosed in parenthesis become "invisible"

2007-02-13 Thread Martin Soto
Hello everyone:

I reported this problem (http://www.sqlite.org/cvstrac/tktview?tn=2060)
back in November but there doesn't seem to be any progress towards a
solution, and the workaround suggested in the ticket doesn't work for me
because of the way I generate SQL.

I could even try to look into it and fix the bug by myself, but being a
SQLite newbie, I don't really know were to start. For this reason, any
suggestions about were the problem could lie and what to do to fix it
will be greatly appreciated.

Thanks and best wishes,

M. S.


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



[sqlite] Re: New (ish) to C== and new to SQLite error with prepare.

2007-02-13 Thread Igor Tandetnik

Paul Simpson <[EMAIL PROTECTED]>
wrote: 

sqlite3_stmt **ppStmt;
const char **pzTail;

rc = (sqlPrepareAdd)(newdb,
getDBVersion.c_str(),getDBVersion.length(),ppStmt,pzTail);


Make it

sqlite3_stmt* pStmt;
const char* pzTail;
rc = (sqlPrepareAdd)(newdb,
 getDBVersion.c_str(),getDBVersion.length(), , );

When you pass in pointers, they should actually point to a valid
locaction in memory.

Igor Tandetnik

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



[sqlite] Version 3.3.13

2007-02-13 Thread drh
SQLite version 3.3.13 is now available in the usual place:

   http://www.sqlite.org/download.html

The principal reason for this release is to fix ticket #2211 - 
the ORDER BY optimization problem.  But also included are
some new (experimental) features such as the COLLATE operator
and the randomBlob() and hex() functions.

As always, please let me know if you find any problems.
--
D. Richard Hipp  <[EMAIL PROTECTED]>


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



[sqlite] Fulltext (php)

2007-02-13 Thread Cecilia VIGNY

Good afternoon,

Does anybody have an idea of when the most recent version of SQLite, 
which supports fulltext indexes, will be integrated with Php ?


Have a nice day ;)



Ce message est prot?g? par les r?gles relatives au secret des correspondances. 
Il est donc ?tabli ? destination exclusive de son destinataire. Celui-ci peut 
donc contenir des informations confidentielles. La divulgation de ces 
informations est ? ce titre rigoureusement interdite. Si vous avez re?u ce 
message par erreur, merci de le renvoyer ? l'exp?diteur dont l'adresse e-mail 
figure ci-dessus et de d?truire le message ainsi que toute pi?ce jointe.

This message is protected by the secrecy of correspondence rules. Therefore, 
this message is intended solely for the attention of the addressee. This 
message may contain privileged or confidential information, as such the 
disclosure of these informations is strictly forbidden. If, by mistake, you 
have received this message, please return this message to the addressser whose 
e-mail address is written above and destroy this message and all files attached.



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



[sqlite] New (ish) to C== and new to SQLite error with prepare.

2007-02-13 Thread Paul Simpson
Hi,

I'm (fairly) new to C++ and also to using dlls and SQLite etc. etc.

Ok, so I have a class which represents my database connection. When the
open() method is called, it should open the SQLite database. This works.
Next, I wnt to use the PRAGMA user_version command to see if the database
version matches the app version. (If not, then I intend to prompt the user
and offer to upgrade...)

So far so good, however when I try to actually do it, the file opens ok
(and I can close it), however when the prepare function is called, I get a
GPF. This happens with both the prepare and the prepare_V2 functions. I
know it is that line, because if I comment it out!

pologies for the poor coding (I'm learning!) but could anyone tell me what
I'm doing wrong, please?

Many thanks


-- 
Paul

Code:-
dbConnection.h
#include "sqlite3.h"
typedef int (*SQLCALLBACK)(void *,int,char **,char **);
typedef int (*SQLOPEN)(const char *,sqlite3 **);
typedef int (*SQLPREPARE)(sqlite3 *db,const char *zSql,int
nBytes,sqlite3_stmt **ppStmt,const char **pzTail);
typedef int (*SQLSTEP)(sqlite3_stmt **ppStmt);
typedef int (*SQLFINALIZE)(sqlite3_stmt **ppStmt);
typedef char *(*SQLERRMSG)(sqlite3 *);
typedef void (*SQLCLOSE)(sqlite3 *);
class dbConnection{
public:
dbConnection();
bool isValid();
bool isInit();
bool openFile();
bool open(wxString filename);
bool closeFile();
wxString getFileName();
int versionCallback(void *NotUsed, int argc, char **argv, char 
**azColName);
private:
SQLOPEN sqlOpenAdd;
SQLPREPARE sqlPrepareAdd;
SQLSTEP sqlStepAdd;
SQLFINALIZE sqlFinalizeAdd;
SQLERRMSG sqlErrMsgAdd;
SQLCLOSE sqlCloseAdd;
sqlite3 *db;
HINSTANCE hinstLib;
bool initialized;
bool dbValid;
wxString path;
};

dbConnection.cpp
#include 
#include "markbookplus.h"
#include "dbconnection.h"
dbConnection::dbConnection(){
db = NULL;
initialized = false;
dbValid = false;
hinstLib = LoadLibrary(TEXT("sqlite3.dll"));
if (hinstLib != NULL)
{
sqlOpenAdd = (SQLOPEN) GetProcAddress(hinstLib,
TEXT("sqlite3_open"));
initialized = (sqlOpenAdd != NULL);
sqlPrepareAdd = (SQLPREPARE) GetProcAddress(hinstLib,
TEXT("sqlite3_prepare"));
initialized &= (sqlPrepareAdd != NULL);
sqlStepAdd = (SQLSTEP) GetProcAddress(hinstLib,
TEXT("sqlite3_step"));
initialized &= (sqlStepAdd != NULL);
sqlFinalizeAdd = (SQLFINALIZE) GetProcAddress(hinstLib,
TEXT("sqlite3_finalize"));
initialized &= (sqlFinalizeAdd != NULL);
sqlErrMsgAdd = (SQLERRMSG) GetProcAddress(hinstLib,
TEXT("sqlite3_errmsg"));
initialized &= (sqlErrMsgAdd != NULL);
sqlCloseAdd = (SQLCLOSE) GetProcAddress(hinstLib,
TEXT("sqlite3_close"));
initialized &= (sqlCloseAdd != NULL);
}
}
bool dbConnection::isInit(){
return initialized;
}
bool dbConnection::isValid(){
return dbValid;
}
bool dbConnection::openFile(){
wxFileDialog dialog(NULL,
wxT("Choose MarkbookPlus Data 
file"),
wxEmptyString,
wxEmptyString,
wxT("MarkBookPlus Data Files 
(*.mbd)|*.mbd"),
wxOPEN);
if (dialog.ShowModal() == wxID_OK){
closeFile();
path = dialog.GetPath();
return open(path);

}
return false;
}
bool dbConnection::open(wxString filename){
//  char *zErrMsg = 0;
int rc;
sqlite3 *newdb = NULL;
sqlite3_stmt **ppStmt;
const char **pzTail;
rc = (sqlOpenAdd) (filename.c_str(),);
if(rc != SQLITE_OK){
wxString msg;
msg.Printf(wxT("Can't open database: 
%s"),(sqlErrMsgAdd)(newdb));
wxMessageBox(msg, wxT("File Open Failure"),
wxOK | wxICON_ERROR, NULL);
return false;
}
wxString getDBVersion = "PRAGMA user_version";
rc = (sqlPrepareAdd)(newdb,
getDBVersion.c_str(),getDBVersion.length(),ppStmt,pzTail);
if(rc != SQLITE_OK){
wxString msg;
msg.Printf(wxT("Can't process database: 
%s"),(sqlErrMsgAdd)(newdb));
wxMessageBox(msg, wxT("File Open Failure"),
wxOK | wxICON_ERROR, NULL);
return false;
}
//  rc = (sqlStepAdd)(ppStmt);
//  if(rc == SQLITE_ROW){
//  }else{
//  wxString msg;
//  msg.Printf(wxT("Can't process database: 
%s"),(sqlErrMsgAdd)(newdb));
//  wxMessageBox(msg, wxT("File Open Failure"),
//  wxOK | wxICON_ERROR, NULL);
//  return false;
//  }
rc = 

Re: [sqlite] SQLite / php - Using REGEXP

2007-02-13 Thread Cecilia VIGNY

[EMAIL PROTECTED] a écrit :

Cecilia VIGNY <[EMAIL PROTECTED]> wrote:
  

Hi,

I'm developing a Php program which uses a SQLite database. I want to 
execute an SQL request :


select * from dicsupp WHERE supp regexp 'test';

It doesn't work... What's wrong ?




From the documentation, specifically at
http://www.sqlite.org/lang_expr.html:

   "The REGEXP operator is a special syntax for the regexp() user
function. No regexp() user function is defined by default and
so use of the REGEXP operator will normally result in an error
message. If a user-defined function named "regexp" is added at
run-time, that function will be called in order to implement
the REGEXP operator."

So you need to add a regexp() user function in order for the
REGEXP operator to work.  I suspect you can do that from PHP
but I do not personally know exactly how it is done.

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


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

  

This is not practical... :(
I'm working with ADOdb, to abstract my MySQL and SQLite databases...
I'm going to search for a compatible solution, even if it will be less 
powerful


Thank you for all responses



Ce message est protégé par les règles relatives au secret des correspondances. 
Il est donc établi à destination exclusive de son destinataire. Celui-ci peut 
donc contenir des informations confidentielles. La divulgation de ces 
informations est à ce titre rigoureusement interdite. Si vous avez reçu ce 
message par erreur, merci de le renvoyer à l'expéditeur dont l'adresse e-mail 
figure ci-dessus et de détruire le message ainsi que toute pièce jointe.

This message is protected by the secrecy of correspondence rules. Therefore, 
this message is intended solely for the attention of the addressee. This 
message may contain privileged or confidential information, as such the 
disclosure of these informations is strictly forbidden. If, by mistake, you 
have received this message, please return this message to the addressser whose 
e-mail address is written above and destroy this message and all files attached.



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



Re: [sqlite] SQLite / php - Using REGEXP

2007-02-13 Thread drh
Cecilia VIGNY <[EMAIL PROTECTED]> wrote:
> Hi,
> 
> I'm developing a Php program which uses a SQLite database. I want to 
> execute an SQL request :
> 
> select * from dicsupp WHERE supp regexp 'test';
> 
> It doesn't work... What's wrong ?
> 

From the documentation, specifically at
http://www.sqlite.org/lang_expr.html:

   "The REGEXP operator is a special syntax for the regexp() user
function. No regexp() user function is defined by default and
so use of the REGEXP operator will normally result in an error
message. If a user-defined function named "regexp" is added at
run-time, that function will be called in order to implement
the REGEXP operator."

So you need to add a regexp() user function in order for the
REGEXP operator to work.  I suspect you can do that from PHP
but I do not personally know exactly how it is done.

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


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



Re: [sqlite] SQLite and text encoding

2007-02-13 Thread Dan Kennedy
On Tue, 2007-02-13 at 11:58 +0200, DragonK wrote:
> Hi,
> 
> I have a table containing a text field, which is UTF-8 encoded data.  I want
> to know if I use sqlite3_column_text16() to retrieve the contents
> of the field, would the data be automatically converted to UTF-16, or would
> the characters be simply "extended" to 16 bit ? The documentation didn't
> help me much

converted to utf-16.

> Any solutions/hints are deeply appreciated!  :)
> 
> Thanks.
> 


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



Re: [sqlite] SQLite / php - Using REGEXP

2007-02-13 Thread Michael Schlenker

Cecilia VIGNY schrieb:

Hi,

I'm developing a Php program which uses a SQLite database. I want to 
execute an SQL request :


select * from dicsupp WHERE supp regexp 'test';

It doesn't work... What's wrong ?

Thank you ! ;)

There could be all sorts of things wrong. Your SQL code looks correct so 
far (but using regexp with a constant pattern like 'test' is a bit 
inefficient).


Do you get any error message? How do you execute your statement?

Michael

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



[sqlite] SQLite / php - Using REGEXP

2007-02-13 Thread Cecilia VIGNY

Hi,

I'm developing a Php program which uses a SQLite database. I want to 
execute an SQL request :


select * from dicsupp WHERE supp regexp 'test';

It doesn't work... What's wrong ?

Thank you ! ;)

Cécilia.



Ce message est protégé par les règles relatives au secret des correspondances. 
Il est donc établi à destination exclusive de son destinataire. Celui-ci peut 
donc contenir des informations confidentielles. La divulgation de ces 
informations est à ce titre rigoureusement interdite. Si vous avez reçu ce 
message par erreur, merci de le renvoyer à l'expéditeur dont l'adresse e-mail 
figure ci-dessus et de détruire le message ainsi que toute pièce jointe.

This message is protected by the secrecy of correspondence rules. Therefore, 
this message is intended solely for the attention of the addressee. This 
message may contain privileged or confidential information, as such the 
disclosure of these informations is strictly forbidden. If, by mistake, you 
have received this message, please return this message to the addressser whose 
e-mail address is written above and destroy this message and all files attached.



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



[sqlite] Call for Submissions: ICIMP 2007 & ICDT 2007 & ICGD 2007, Silicon Valley, July 1-6, 2007

2007-02-13 Thread Dr. Reda

 
 
Call for Submissions: ICIMP 2007 & ICDT 2007 & ICGD 2007, Silicon Valley,
July 1-6, 2007
 
SUBMISSION DEADLINE: FEBRUARY 20

Invitation:

Please consider contributing to the conferences ICIMP 2007 , ICDT 2007 and
ICGD 2007 
as well as to the associated workshops listed below.
Date: July 1-6, 2007 - Silicon Valley, USA
 
Please forward the Call for Submissions to the appropriate group. ^

===
CALL FOR PAPERS , TUTORIALS, PANELS 
 
ICDT 2007, The Second International Conference on Digital Telecommunications 
http://www.iaria.org/conferences2007/ICDT07.html
 
ICIMP 2007, The Second International Conference on Internet Monitoring and
Protection 
http://www.iaria.org/conferences2007/ICIMP07.html
 
ICGD 2007, The First International Conference on Global Defense and
Business Continuity 
http://www.iaria.org/conferences2007/ICGDBC07.html
__
Place:   Silicon Valley,
California
Important deadlines:
Full paper submissionFebruary 20, 2007
Author notification  March 21, 2007
Registration and Camera ready  March 31, 2007
__
Featuring the workshops:
 
ICIMP 2007 Workshops:
oSYVUL 2007: The First International Workshop on Systems
Vulnerabilities 
oSYDIA 2007: The First International Workshop on Systems Diagnosis 
oCYBER-FRAUD 2007: The First International Workshop on Cyber-Fraud 
 
ICDT 2007 Workshops:
oSARP 2007: The First International Workshop on Software
Architecture Research and Practice 
oSTREAM 2007: The First International Workshop on Data Stream
Processing 
 
ICGD 2007 Workshop:
oTRACK 2007: The First International Workshop on Tracking Computing
Technologies 

 
 
__
Conference Topics:
 
ICIMP 2007 Tracks:
•   TRASI: Internet traffic surveillance and interception 
•   IPERF: Internet Performance 
•   RTSEC: Security for Internet-based real-time systems 
•   DISAS: Disaster prevention and recovery 
•   EMERG: Networks and applications emergency services  
•   MONIT: End-to-end sampling, measurement, and monitoring 
•   REPORT: Experiences & lessons learnt in securing networks and 
applications 
•   USSAF: User safety, privacy, and protection over Interne 
 
ICDT 2007 Tracks:
•   MULTE: Multimedia Telecommunications 
•   SIGNAL: Signal processing in telecommunications 
•   DATA: Data processing 
•   AUDIO: Audio transmission and reception systems 
•   VOICE: Voice over packet networks 
•   VIDEO: Video, conferencing, telephony 
•   IMAGE: Image producing, sending, and mining 
•   SPEECH: Speech producing and processing 
•   IPTV: IP/Mobile TV 
•   MULTI: Multicast/Broadcast Triple-Quadruple-play 
•   CONTENT: Production, distribution 
•   HXSIP: H-series towards SIP 
•   MEDMAN: Control and management of multimedia telecommunication 
 
ICGD 2007 Tracks:
•   BUSINESS: Business continuity 
•   RISK: Risk assessment 
•   DISASTER: Emergency services and disaster recovery 
•   TRUST: Privacy and trust in pervasive communications
•   RIGHT: Digital rights management 
•   BIOTEC: Biometric techniques 

-- 
View this message in context: 
http://www.nabble.com/Call-for-Submissions%3A-ICIMP-2007---ICDT-2007---ICGD-BC-2007%2C-Silicon-Valley%2C-July-1-6%2C-2007-tf3220001.html#a8942500
Sent from the SQLite mailing list archive at Nabble.com.


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



[sqlite] SQLite and text encoding

2007-02-13 Thread DragonK

Hi,

I have a table containing a text field, which is UTF-8 encoded data.  I want
to know if I use sqlite3_column_text16() to retrieve the contents
of the field, would the data be automatically converted to UTF-16, or would
the characters be simply "extended" to 16 bit ? The documentation didn't
help me much

Any solutions/hints are deeply appreciated!  :)

Thanks.

--
...it's only a matter of time...