<?xml version="1.0" encoding="utf-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: AIR SQLite utility library (SQL runner, database copy)</title>
	<atom:link href="http://probertson.com/projects/air-sqlite/feed/" rel="self" type="application/rss+xml" />
	<link>http://probertson.com</link>
	<description>Thoughts on web development, user-centered design, code, etc. by Paul Robertson</description>
	<lastBuildDate>Wed, 16 May 2012 17:16:00 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: Paul</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-100243</link>
		<dc:creator>Paul</dc:creator>
		<pubDate>Wed, 12 Oct 2011 21:42:00 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-100243</guid>
		<description>Hey Paul, You are totally right as it is working fine. I was having some permission issue with db.
Your library is great by the way!

Cheers,
Paul</description>
		<content:encoded><![CDATA[<p>Hey Paul, You are totally right as it is working fine. I was having some permission issue with db.<br />
Your library is great by the way!</p>
<p>Cheers,<br />
Paul</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-100226</link>
		<dc:creator>Paul</dc:creator>
		<pubDate>Wed, 12 Oct 2011 17:16:19 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-100226</guid>
		<description>Hmmm. I guess I need to make the docs clearer on that point!

The SQLRunnerUnpooled.execute() method should work for any type of SQL statement, so you should be fine using it with an INSERT statement.

If it doesn&#039;t work, let me know and I&#039;ll fix it!</description>
		<content:encoded><![CDATA[<p>Hmmm. I guess I need to make the docs clearer on that point!</p>
<p>The SQLRunnerUnpooled.execute() method should work for any type of SQL statement, so you should be fine using it with an INSERT statement.</p>
<p>If it doesn&#8217;t work, let me know and I&#8217;ll fix it!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-100224</link>
		<dc:creator>Paul</dc:creator>
		<pubDate>Wed, 12 Oct 2011 17:07:10 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-100224</guid>
		<description>Paul.

I am finding your code very helpful while developing an Android App.
At the moment I am using your SQLRunnerUnpooled class but I got to a moment in which I need to do an INSERT to the database. How can I do that, or should I change code to use the SQLRunner class instead.

Thx a lot</description>
		<content:encoded><![CDATA[<p>Paul.</p>
<p>I am finding your code very helpful while developing an Android App.<br />
At the moment I am using your SQLRunnerUnpooled class but I got to a moment in which I need to do an INSERT to the database. How can I do that, or should I change code to use the SQLRunner class instead.</p>
<p>Thx a lot</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: SQLiteNoob</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-95854</link>
		<dc:creator>SQLiteNoob</dc:creator>
		<pubDate>Fri, 26 Aug 2011 02:12:39 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-95854</guid>
		<description>Hey, Amazing stuff! I&#039;ve been learning a lot about SQLite and Flex from the posts you&#039;ve done on this site and from Adobe. 

Quick question - I created an SQLite db, and now I want to use your DBCopier.as class to encrypt it - but I am having a lot of difficulty: Flash Builder doesn&#039;t recognize the &quot;EncrypterProgressPhase&quot; properties as well as the start() method! Could a lowly newb like myself humbly request a post of how to use this class? 

Thanks for everything you have already contributed to the community!</description>
		<content:encoded><![CDATA[<p>Hey, Amazing stuff! I&#8217;ve been learning a lot about SQLite and Flex from the posts you&#8217;ve done on this site and from Adobe. </p>
<p>Quick question - I created an SQLite db, and now I want to use your DBCopier.as class to encrypt it - but I am having a lot of difficulty: Flash Builder doesn&#8217;t recognize the &#8220;EncrypterProgressPhase&#8221; properties as well as the start() method! Could a lowly newb like myself humbly request a post of how to use this class? </p>
<p>Thanks for everything you have already contributed to the community!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Tac</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-94823</link>
		<dc:creator>Tac</dc:creator>
		<pubDate>Wed, 10 Aug 2011 10:29:09 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-94823</guid>
		<description>Thanks, this looks like an interesting approach.  I&#039;m trying to integrate it with SurveyApe, but am such a newbie at Flash/Flex that I&#039;m stuck on some of the basics.  Can you post (or point me to) a working project, with the associated mxml and Employee.as class files?

Thx,

Tac</description>
		<content:encoded><![CDATA[<p>Thanks, this looks like an interesting approach.  I&#8217;m trying to integrate it with SurveyApe, but am such a newbie at Flash/Flex that I&#8217;m stuck on some of the basics.  Can you post (or point me to) a working project, with the associated mxml and Employee.as class files?</p>
<p>Thx,</p>
<p>Tac</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: rudi</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-88377</link>
		<dc:creator>rudi</dc:creator>
		<pubDate>Wed, 04 May 2011 17:50:03 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-88377</guid>
		<description>hello,
I&#039;m still trying to create some sort of application &quot;server&quot; that is able to respond to multiple clients through your library on lan.
Now I&#039;m a little panicked at the time that it does not respond well, let me explain: If you start to change simultaneously two modify queries I get from my &quot;server&quot;only the first response to the query made ‚Äã‚Äã... now I&#039;d send you my job so you could see it if you want! unfortunately I do not have good depth of your work, and I&#039;m not a great programmer, it may be that your library may stop when there&#039;s two or more simultaneous requests for changes? or rather, it is possible that in the previous case, your utility takes into account only the first query  (perhaps not consider ... is lost ... or anything else?).
if I understood, your library takes all queries that come in, put them in a queue, and executes them one after the other, keeping the query blockers, without skipping any request.
thanks for your kind reply.</description>
		<content:encoded><![CDATA[<p>hello,<br />
I&#8217;m still trying to create some sort of application &#8220;server&#8221; that is able to respond to multiple clients through your library on lan.<br />
Now I&#8217;m a little panicked at the time that it does not respond well, let me explain: If you start to change simultaneously two modify queries I get from my &#8220;server&#8221;only the first response to the query made ‚Äã‚Äã&#8230; now I&#8217;d send you my job so you could see it if you want! unfortunately I do not have good depth of your work, and I&#8217;m not a great programmer, it may be that your library may stop when there&#8217;s two or more simultaneous requests for changes? or rather, it is possible that in the previous case, your utility takes into account only the first query  (perhaps not consider &#8230; is lost &#8230; or anything else?).<br />
if I understood, your library takes all queries that come in, put them in a queue, and executes them one after the other, keeping the query blockers, without skipping any request.<br />
thanks for your kind reply.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Paul Robertson</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-87071</link>
		<dc:creator>Paul Robertson</dc:creator>
		<pubDate>Thu, 07 Apr 2011 03:25:04 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-87071</guid>
		<description>Hi Damon,

The difference between execute() and executeModify() really just comes down to the types of SQL commands each one can run -- it doesn&#039;t have anything to do with &quot;batch&quot; or &quot;not a batch&quot;.

I. For SELECT statements, use execute()

	if you want to run several SELECT statements at the same time, just call execute() several times. It&#039;s okay -- in fact, the library is designed specifically around that use case.
	The statements will run in parallel, up to the number of available database connections (specified in the SQLRunner constructor, default 5).
	If you send more statements than there are connections available, the rest will just patiently wait and will run as soon as a connection becomes available.


II. For INSERT/UPDATE/DELETE statements, use executeModify()

	if you want the statement to run in isolation, call executeModify() and just pass one statement (wrapped in a &quot;batch&quot;).
	If you want to run several statements and have them linked together in a transaction (so that if one fails they are all reverted), call executeModify() one time with all the statements together in the batch.
	There&#039;s no point to having an itemClass for executeModify(), since you (presumably) aren&#039;t going to send a SELECT statement in the middle of a transaction of INSERT/UPDATE/DELETE statements
	If you want to for example perform an INSERT or UPDATE then run a SELECT statement immediately after, just call executeModify() then call execute(). The library takes care of keeping them in order so the INSERT/UPDATE will run first, the transaction will finish, and then your SELECT will run. 


Sorry if this is not very clear. I&#039;m going to try to rethink the api to figure out a way to make this make more sense (or else to not have the two methods, or something).</description>
		<content:encoded><![CDATA[<p>Hi Damon,</p>
<p>The difference between execute() and executeModify() really just comes down to the types of SQL commands each one can run &#8212; it doesn&#8217;t have anything to do with &#8220;batch&#8221; or &#8220;not a batch&#8221;.</p>
<p>I. For SELECT statements, use execute()</p>
<p>	if you want to run several SELECT statements at the same time, just call execute() several times. It&#8217;s okay &#8212; in fact, the library is designed specifically around that use case.<br />
	The statements will run in parallel, up to the number of available database connections (specified in the SQLRunner constructor, default 5).<br />
	If you send more statements than there are connections available, the rest will just patiently wait and will run as soon as a connection becomes available.</p>
<p>II. For INSERT/UPDATE/DELETE statements, use executeModify()</p>
<p>	if you want the statement to run in isolation, call executeModify() and just pass one statement (wrapped in a &#8220;batch&#8221;).<br />
	If you want to run several statements and have them linked together in a transaction (so that if one fails they are all reverted), call executeModify() one time with all the statements together in the batch.<br />
	There&#8217;s no point to having an itemClass for executeModify(), since you (presumably) aren&#8217;t going to send a SELECT statement in the middle of a transaction of INSERT/UPDATE/DELETE statements<br />
	If you want to for example perform an INSERT or UPDATE then run a SELECT statement immediately after, just call executeModify() then call execute(). The library takes care of keeping them in order so the INSERT/UPDATE will run first, the transaction will finish, and then your SELECT will run. </p>
<p>Sorry if this is not very clear. I&#8217;m going to try to rethink the api to figure out a way to make this make more sense (or else to not have the two methods, or something).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Damon</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-87069</link>
		<dc:creator>Damon</dc:creator>
		<pubDate>Thu, 07 Apr 2011 02:08:20 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-87069</guid>
		<description>I&#039;m confused a bit between execute vs executeModify.  I think i get that execute does a single statement and can assign the results as a specific class, and execute modify allows you to batch statements.  But what if you&#039;d like to batch statements and have the results be typed as a class? Is that simply not possible because you can&#039;t have an array of specific classes the same way you can have an array of objects?

the reason i&#039;m curious is I have a large statement batch to pull a variety of objects from different tables from a day, and I would like to be able to have them come out as their proper class types so that i can update them right in a datagrid.</description>
		<content:encoded><![CDATA[<p>I&#8217;m confused a bit between execute vs executeModify.  I think i get that execute does a single statement and can assign the results as a specific class, and execute modify allows you to batch statements.  But what if you&#8217;d like to batch statements and have the results be typed as a class? Is that simply not possible because you can&#8217;t have an array of specific classes the same way you can have an array of objects?</p>
<p>the reason i&#8217;m curious is I have a large statement batch to pull a variety of objects from different tables from a day, and I would like to be able to have them come out as their proper class types so that i can update them right in a datagrid.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lukasz 'Severiaan' Grela</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-79078</link>
		<dc:creator>Lukasz 'Severiaan' Grela</dc:creator>
		<pubDate>Wed, 10 Nov 2010 16:44:43 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-79078</guid>
		<description>@Jeffrey Fernandez
I could guess that you have used that on android device. I have the same error when I am trying to save to the sdcard so basically any path for file:///mnt/sdcard from the list below.

				File.applicationDirectory:app:/
File.applicationStorageDirectory:app-storage:/
File.desktopDirectory:file:///mnt/sdcard
File.documentsDirectory:file:///mnt/sdcard
File.userDirectory:file:///mnt/sdcard</description>
		<content:encoded><![CDATA[<p>@Jeffrey Fernandez<br />
I could guess that you have used that on android device. I have the same error when I am trying to save to the sdcard so basically any path for file:///mnt/sdcard from the list below.</p>
<p>				File.applicationDirectory:app:/<br />
File.applicationStorageDirectory:app-storage:/<br />
File.desktopDirectory:file:///mnt/sdcard<br />
File.documentsDirectory:file:///mnt/sdcard<br />
File.userDirectory:file:///mnt/sdcard</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jeffery Fernandez</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-78374</link>
		<dc:creator>Jeffery Fernandez</dc:creator>
		<pubDate>Tue, 19 Oct 2010 23:39:36 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-78374</guid>
		<description>Hi Robert,

Why do I keep getting the following error:

SQLError: &#039;Error #3125: Unable to open the database file.&#039;, details:&#039;Connection closed.&#039;, operation:&#039;open&#039;, detailID:&#039;1001&#039;

I have followed the examples you have shown here but I get the above error. I understand what the error means ( that the database path does not exist ) but am I missing something else. Do I have to make an SQLConnection before creating the SQLRunner  object?</description>
		<content:encoded><![CDATA[<p>Hi Robert,</p>
<p>Why do I keep getting the following error:</p>
<p>SQLError: &#8216;Error #3125: Unable to open the database file.&#8217;, details:&#8217;Connection closed.&#8217;, operation:&#8217;open&#8217;, detailID:&#8217;1001&#8217;</p>
<p>I have followed the examples you have shown here but I get the above error. I understand what the error means ( that the database path does not exist ) but am I missing something else. Do I have to make an SQLConnection before creating the SQLRunner  object?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: AIR for Android resource roundup &#124; simon-townsend.com</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-76683</link>
		<dc:creator>AIR for Android resource roundup &#124; simon-townsend.com</dc:creator>
		<pubDate>Fri, 30 Jul 2010 19:58:40 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-76683</guid>
		<description>[...] AIR SQLite Utility [...]</description>
		<content:encoded><![CDATA[<p>[&#8230;] AIR SQLite Utility [&#8230;]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Adobe Flash Platform * Application design for database performance</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-75195</link>
		<dc:creator>Adobe Flash Platform * Application design for database performance</dc:creator>
		<pubDate>Fri, 14 May 2010 11:37:16 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-75195</guid>
		<description>&lt;!--%kramer-ref-pre%--&gt;[...] execute multiple statements simultaneously. For more information and to download the library, visit http://probertson.com/projects/air-sqlite/.         [...]&lt;!--%kramer-ref-post%--&gt;</description>
		<content:encoded><![CDATA[<p><!--%kramer-ref-pre%-->[&#8230;] execute multiple statements simultaneously. For more information and to download the library, visit <a href="http://probertson.com/projects/air-sqlite/" rel="nofollow">http://probertson.com/projects/air-sqlite/</a>.         [&#8230;]<!--%kramer-ref-post%--></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nicholas Shipes</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-74034</link>
		<dc:creator>Nicholas Shipes</dc:creator>
		<pubDate>Mon, 22 Mar 2010 23:29:36 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-74034</guid>
		<description>I&#039;m having the same problem with SQLStatement.executing returning true when running batch statements. Don, you stated you had to ensure .executing was false before executing the next statement, but how did you accomplish this? Did you modify the PendingBatch class for this?

&lt;em&gt;[This should be fixed in version 0.1.1]&lt;/em&gt;</description>
		<content:encoded><![CDATA[<p>I&#8217;m having the same problem with SQLStatement.executing returning true when running batch statements. Don, you stated you had to ensure .executing was false before executing the next statement, but how did you accomplish this? Did you modify the PendingBatch class for this?</p>
<p><em>[This should be fixed in version 0.1.1]</em></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Don Mitchinson</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-73621</link>
		<dc:creator>Don Mitchinson</dc:creator>
		<pubDate>Fri, 26 Feb 2010 16:28:35 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-73621</guid>
		<description>Hi Matt:

I don&#039;t know if you found the solution to your problemm or not yet, but I encountered similar errors when I was opening my db asynchronlously.

I had to ensure SQLStatement.executing was false before executing the next statement.

Don


&lt;em&gt;[The problem was a bug in the library, which is fixed in version 0.1.1]&lt;/em&gt;</description>
		<content:encoded><![CDATA[<p>Hi Matt:</p>
<p>I don&#8217;t know if you found the solution to your problemm or not yet, but I encountered similar errors when I was opening my db asynchronlously.</p>
<p>I had to ensure SQLStatement.executing was false before executing the next statement.</p>
<p>Don</p>
<p><em>[The problem was a bug in the library, which is fixed in version 0.1.1]</em></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mario Rodrigues</title>
		<link>http://probertson.com/projects/air-sqlite/#comment-73579</link>
		<dc:creator>Mario Rodrigues</dc:creator>
		<pubDate>Wed, 24 Feb 2010 14:57:33 +0000</pubDate>
		<guid isPermaLink="false">http://probertson.com/?page_id=321#comment-73579</guid>
		<description>Hi, I get the following error when trying to use your library for both simple SQL statements and batch statements.

Error: Error #3110: Operation cannot be performed while SQLStatement.executing is true.
	at Error$/throwError()
	at flash.data::SQLStatement/checkReady()
	at flash.data::SQLStatement/execute()
	at com.probertson.data.sqlRunnerClasses::PendingBatch/executeStatements()[C:\git\air-sqlite\src\com\probertson\data\sqlRunnerClasses\PendingBatch.as:112]
	at com.probertson.data.sqlRunnerClasses::PendingBatch/conn_begin()[C:\git\air-sqlite\src\com\probertson\data\sqlRunnerClasses\PendingBatch.as:95]

Any ideas on what I might be doing wrong?

&lt;em&gt;[This should be fixed in version 0.1.1]&lt;/em&gt;</description>
		<content:encoded><![CDATA[<p>Hi, I get the following error when trying to use your library for both simple SQL statements and batch statements.</p>
<p>Error: Error #3110: Operation cannot be performed while SQLStatement.executing is true.<br />
	at Error$/throwError()<br />
	at flash.data::SQLStatement/checkReady()<br />
	at flash.data::SQLStatement/execute()<br />
	at com.probertson.data.sqlRunnerClasses::PendingBatch/executeStatements()[C:&#92;git&#92;air-sqlite&#92;src&#92;com&#92;probertson&#92;data&#92;sqlRunnerClasses&#92;PendingBatch.as:112]<br />
	at com.probertson.data.sqlRunnerClasses::PendingBatch/conn_begin()[C:&#92;git&#92;air-sqlite&#92;src&#92;com&#92;probertson&#92;data&#92;sqlRunnerClasses&#92;PendingBatch.as:95]</p>
<p>Any ideas on what I might be doing wrong?</p>
<p><em>[This should be fixed in version 0.1.1]</em></p>
]]></content:encoded>
	</item>
</channel>
</rss>

