13.08.2012 Views

ACTIONSCRIPT 3 Developer’s Guide en

ACTIONSCRIPT 3 Developer’s Guide en

ACTIONSCRIPT 3 Developer’s Guide en

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ACTIONSCRIPT</strong> 3.0 DEVELOPER’S GUIDE<br />

Working with local SQL databases in AIR<br />

// assume the variables "username" and "password"<br />

// contain user-<strong>en</strong>tered data<br />

var sql:String =<br />

"SELECT userId " +<br />

"FROM users " +<br />

"WHERE username = '" + username + "' " +<br />

" AND password = '" + password + "'";<br />

var statem<strong>en</strong>t:SQLStatem<strong>en</strong>t = new SQLStatem<strong>en</strong>t();<br />

statem<strong>en</strong>t.text = sql;<br />

Using statem<strong>en</strong>t parameters instead of concat<strong>en</strong>ating user-<strong>en</strong>tered values into a statem<strong>en</strong>t's text prev<strong>en</strong>ts a SQL<br />

injection attack. SQL injection can’t happ<strong>en</strong> because the parameter values are treated explicitly as substituted values,<br />

rather than becoming part of the literal statem<strong>en</strong>t text. The following is the recomm<strong>en</strong>ded alternative to the previous<br />

listing:<br />

// assume the variables "username" and "password"<br />

// contain user-<strong>en</strong>tered data<br />

var sql:String =<br />

"SELECT userId " +<br />

"FROM users " +<br />

"WHERE username = :username " +<br />

" AND password = :password";<br />

var statem<strong>en</strong>t:SQLStatem<strong>en</strong>t = new SQLStatem<strong>en</strong>t();<br />

statem<strong>en</strong>t.text = sql;<br />

// set parameter values<br />

statem<strong>en</strong>t.parameters[":username"] = username;<br />

statem<strong>en</strong>t.parameters[":password"] = password;<br />

Retrieving data from a database<br />

Adobe AIR 1.0 and later<br />

Retrieving data from a database involves two steps. First, you execute a SQL SELECT statem<strong>en</strong>t, describing the set of<br />

data you want from the database. Next, you access the retrieved data and display or manipulate it as needed by your<br />

application.<br />

Executing a SELECT statem<strong>en</strong>t<br />

Adobe AIR 1.0 and later<br />

To retrieve existing data from a database, you use a SQLStatem<strong>en</strong>t instance. Assign the appropriate SQL SELECT<br />

statem<strong>en</strong>t to the instance’s text property, th<strong>en</strong> call its execute() method.<br />

For details on the syntax of the SELECT statem<strong>en</strong>t, see “SQL support in local databases” on page 1093.<br />

The following example demonstrates executing a SELECT statem<strong>en</strong>t to retrieve data from a table named “products,”<br />

using asynchronous execution mode:<br />

Last updated 6/6/2012<br />

732

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!