Ray did a good job at talking about SQLite and the basic information on SQLite. I have not used SQLite before and wasn't aware of some of it's functionality and it's limitations.
- You can enter characters into an integer field
- Right outer join, full outer join
- When altering tables only rename table and add column
- Views are read only
- No grant/revoke
- No stored procedures
What's Missing in AIR?
- FK Constraints
- SQLite_Version(), Match()
SQLite In AIR
- Support in both FLEX and HTML
- Actionscript API
- Connecting/Performing Questions/Table Analysis
- Synchonous and Asynchronous
- Encryption for "Sensitive" Data
- Creating a DB
- Any filename is valid (and any extension)
- In memory database are supported
- With SQL!
- Create Table if not exists
- Can also copy a "seed" db
- Types: Integer, real, text, blob, null
- Typeless: you can put text in integer
- Column "Affinities" are used as hints
- Affinities: Text, Numeric, Integer, real, Boolean, Date, XML, XMLList, Object, None
- Uses SQLStatement class
- Speicfy SQL, Parameters, Connection, events
- Returns a SQLResult Class
- Contains Complete, data
- Performance, typing, security
- Uses SQLErrorEvent Class
- Focus on:Connection issues, sql syntax, constraint errors
Selecting With Class
- Select results can be bound to ActionSCript Classes
- Allows for Typed Results
- Gives much better performance for multiple inserts/updates
- Allows you to paginate through large result sets
- Uses a key for connection
- Must be done at creation!
- Can't change your mind...
- Keys can be changed (reencryption())
- Encryptions keys are bytearray (16 bytes)
- Gives you access to tables, views, columns.
- Using a pre-populated DB
- Use On SQLSTatement per action
- LITA is your friend
- DB Transactions have save points