Tito Ciuro <[EMAIL PROTECTED]> writes: > Hello, > > A few days ago I posted a question and I haven't seen any comments so > far. I'm really curious about ROWID's volatility. How can I make sure that > ROWIDs do not get re-initialized? I'm posting the message once again hoping > that someone will explain how I should properly use ROWIDs.
If you declare an INTEGER PRIMARY KEY then it will be used as the ROWID: sqlite> CREATE TABLE test ...> ( ...> id INTEGER PRIMARY KEY, ...> t TEXT ...> ); sqlite> INSERT INTO test VALUES (23, 'hello'); sqlite> INSERT INTO test VALUES (42, 'world'); sqlite> SELECT id, t FROM test; id = 23 t = hello id = 42 t = world sqlite> SELECT ROWID, t FROM test; ROWID = 23 t = hello ROWID = 42 t = world sqlite> .dump BEGIN TRANSACTION; CREATE TABLE test ( id INTEGER PRIMARY KEY, t TEXT ); INSERT INTO test VALUES(23,'hello'); INSERT INTO test VALUES(42,'world'); COMMIT; sqlite> Note that whether I select 'id' or 'ROWID', I get the same value. Also note that the .dump command generates a script that will recreate exactly the same data as I did initially, so ROWID will have the same value after a re-create as it does initially. Derrell --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]