Flex :: Improve The Performance Of The SQLite Database?
Apr 26, 2011
Background: I am using SQLite database in my flex application. Size of the database is 4 MB and have 5 tables which are
table 1 have 2500 records
table 2 have 8700 records
table 3 have 3000 records
table 4 have 5000 records
table 5 have 2000 records.
Problem: Whenever I run a select query on any table, it takes around (approx 50 seconds) to fetch data from database tables. This has made the application quite slow and unresponsive while it fetches the data from the table.
How can i improve the performance of the SQLite database so that the time taken to fetch the data from the tables is reduced?
We have a medium size Flex 3.6 application that contains around 20 different page views (managed via a single lazy ViewStack) each having multiple components. Most use custom renderers.All model data is loaded at startup and changes to model instances are communicated via binding and/or collection change events.Once the user has viewed each page at least once, all page views are instantiated and happily listen to update events.Which in effect means that each time a model instance changes, all interested views receive that event and compute derived data or trigger item-renderers.I have tested and confirmed this behaviour in a proof-of-concept application. Even when setting a list to being invisible, it still listens to collection change events and invalidates any renderer affected.What would you do?
I want to create a Flex 3 application running in Adobe Air that accesses an SQLite database and I need to keep this database in sync with an SQL server 2005 database running a website.Is this something that Flex supports or is it going to be a custom script? Also, has anybody done anything like this?
Edit: The synchronisation can be done on a daily basis rather than real time. The data will be read only from a front end perspective with a CMS to do updates on the website.
I am working on a flex application. The application occupies 100% of the browser screen, but it is slow to load. How should I improve the performance, what are the best techniques one should follow for improving the performance of a flex App. I did try some stuff though, I am not using relative layout instead i am using absolute layout and putting the buttons/images etc at exact places in a Canvas, still i feel it is slow. Can I profile the App or flex code to see where exactly the app is taking the maximum time to execute.
I am using the Open source PurePDF library in my Flex AIR application. The problem is performance:It takes 100% CPU usage and too long to generate a PDF.
I have done some analysis on it and find that the text writing in pdf is expensive. That's why I need to know how I can improve the performance. Are there any fonts for which pdf generation is less expensive, or is there some setting or tip that can make this process somewhat better in terms of performance? secondly in case of images the ImageElement generation is very expensive when writing that element to PDF. Is there any way to reduce the processing?
I found a way to reduce the ImageElement generation processing by resizing the image using flex and by then passing the small image's bitmap data to the image element. It works fine, and i have reduced the time of execution to a good extent. is there any way to tell PDF to work in chunks or divide the work in such a way that it may take more time to complete but won't block the GUI while the PDF is being generated?
I'm making an application (web based) using flex and i have a requirment to access the SQLite database on the local system. There is no server running and i've decided to give them the link to the html file and see how that works out.
So in the root directory, there will be all required swf, html files, etc and a .db file. Can i access that database thro the flex web application ?
I have been struggling with trying to interface with SQLite and Adobe AIR. I am using the Flex 4 SDK with AIR 2.0. I modified code from a tutorial by David Tucker on InsideRIA ([URL]). I am writing in FlashDevelop (which I suppose could be my problem), and I can compile and run the app. The issue is that when I go to search the db file, I always get some error which results in the 'BREAKER' trace (ie - the 'queryError' function is called). I have tried simply running the SQL command on the db and it works fine, so there is an issue somewhere in the way Flex or AIR is handling my query (or obviously I could have made a mistake in coding).
I'm using flex to develop my first desktop app and I'm working with sqlite for the first time as well. I'm creating my database and all the tables and I would also like to add a few rows of data into a couple of the tables so that the users have some data to work with on first install.
The only problem I'm having is every time I run the program it keeps inserting the same data over and over again. I'm just wondering if its possible to do a - INSERT INTO IF NOT EXISTS. or some other kind of work around.
I have a mobile application that uses an sqlite database. I cannot seem to figure out how to access the next record when the user presses the 'next' button. My database is using 'id' as primary key with autoincrement as integer.
private function nextMoveRPart(event:EffectEvent):void { var cardNumber:int = parseInt(cardNumberLabel.text);
This article on Livedocs says you should add the database name in front of tables.[URL]..My question is, should I do that everywhere where a table name appears or only once?In this query: select T1.col,T2.col from T1 left join T2 on T1.id=T2.id order by T2.order;
Should I add main.T1 and main.T2 everywhere or just after for, the first time: select T1.col,T2.col from main.T1 left join main.T2 on T1.id=T2.id order by T2.order;
For poor performance reasons, the DataGrid will cache checkboxes and reuse them for different rows. If you have 50 rows, it won't create 50 checkboxes. It will create as many checkboxes at are visible, plus a few more for padding, and then reuse them as you scroll. This is why you need to explicitly manage their state. How can improve it ? How can fixed checkbox value ? i used checkbox like below But checkbox doesnot remembering the values
I have two FMS 3.5 streaming servers... Both have Windows Server 2003 x64 with 16 GB of RAM..I'm streaming from a common storage and my Application.xml file is like this:
I have a program that is decently complicated in one area and the rest is simple. The complicated stuff is data crunching, pretty much. Would I get an increased performance by doing the data crunching in a second app and just having it send the couple bits of info I want from it to my other app that would be the front end of the program? Or is this a dumb idea? I know air doesn't by default multi thread, so I was just trying to think of a "work around."
I am a bit new to using blitting for graphics. But I have worked up a few demos myself, and I have been reading a lot of information on the methods used. One common theme I have been seeing though is that all of them brute force rendering; drawing the farthest back object first and stepping through all other objects. even drawing objects that are going to be completely overlapped. The reason all of them say this is that any kind of testing to see what should be drawn actually takes more time than just drawing everything with no checks. Is there any kind of way to detect what should be drawn, that will run faster than just drawing everything?
Am currently working on a tool created by a colleague of mine and would like to improve performance. Basically, it's a tool for drawing on screen and uses a combination of Sprites and the Graphics class to draw a line segment every time the mouse is moved when the mouse button is down. Here is the drawing bit:
// on MouseMove protected function drawLine(e:MouseEvent):void { if (currentTool.thickness > 0){ //pen var line:Sprite = new Sprite(); line.graphics.lineStyle(currentTool.thickness, currentColour); [Code] .....
As you can see, it checks if the line 'thickness' property and draws if it is and erases if it isn't. I did think of using a technique similar to blotting here where it'd draw to a bitmap but I'm not sure this'd give the performance boost I want or if, indeed, there would be any way to have an eraser function. The drawing itself works nicely - this isn't the problem, it's the performance of the subsequent 'drawn' sprites.
I've been building a project that is essentially a mashup style editor. You pick from a series of clips, arrange them in order, and then can play them back. Originally it was a series of FLVs that would play one right after another, one stops, next one starts, but this wasn't seamless. So I switched to embedded FLVs inside of SWF files.
Locally this performed better, the videos were more seamless, no gaps where the video disappears because the FLV isn't ready to play, but online it brings the flash movie to a crawl. In total I have 56 video files, either FLV or SWF. There are 4 "tracks" that play simultaneously. Each track is made up of multiple clips. I'm preloading the videos so they are ready for playback when the time comes. The videos are alpha transparent.
I'm working on a simple real time graph. The data is polled every 50ms, and each poll translates to a line one pixel wide, (data_point) pixels high. The graph scrolls such that new data is on the right, and the oldest values eventually fall off the left.
My solution is embarassingly brute-force, in that I just use theMC.graphics.clear() and a loop of lineTo()s for every graph refresh. While this displays correctly (and I can control the refresh rate to mitigate the CPU burn), it should be painfully evident why I want to move away from this method.
I want to programatically scroll or pan the entire graph one pixel to the left (and drop the leftmost line), and then just draw one new line on the right, but I can't figure out where to start. Assuming such a thing is possible in AS3, would someone be so kind as to point me in the right direction?
I am wanting to try to use a sqlite database in my project.I have downloaded several sqlite managers from the internet and they all save the database with a sqlite extension.However I see in flash we use the db extension (is this correct?);How can I use the databases I create if they all save with a sqlite extension?
I'm developing a desktop application in Flash, but I can't seem to find any tutorials that aren't based on FLEX to connect my application to a database file.
Do I have to write my application in FLEX to use SQLite or can I create an AIR app in Flash and still use it?
I need to store a large amount of data that will be internally accessed often within a flash file. The database is temporary and does not need to be stored in an external file. Is it possible to use SQLite to create a database that may be used internally in flash? As far as access speeds are concerned, is this an efficient solution?
I want to emded SQLite database (*.db file) to the AIR app, like images, mp3 etc.This is to ensure that it was impossible to copy my database for other users.
I have a function that inserts data into a SQLite database. I can manually add data using
sqlStatement.text = "INSERT INTO users (First_Name, Last_Name) VALUES ('John', 'Doe')";
This works perfectly. Now I am trying to insert the data from a variable instead. I can trace my variable from this function- trace(Main._firstName); //returns John, but when I insert it using this:
I would like to have a Flash Application (not air) to connect to a local database. Air is not only getting unsupported by Adobe in LINUX but besides, it has serious problems and miss implementation with SQLite. So we want to connect to a local MySQL database. This application should be simple, so we do not want to also have an unnecessary web server (also local) to make a middle communication between the flash app and the MySQL server. There is this driver that allow to communicate Flash with MySQL [URL] Question is: Would it be any problem using this approach when installing the whole application to each client? (because we also in the installation should install a MySQL server).
Im creating an sqlite db in my air for android app inside the following function:[code]i can successfully create tables, insert and select, but each time i re-publish the app from flash cs5.5 the database is overwritten and all data is lost. Totally stumped, any ideas welcome!i'm publishing a debug release directly from flash pro via usb. When the app is initialised it calls the method above, on receiving the OPEN event it creates a table using the following SQL statement.[code]I can then run some operations, insert, select etc and everything is as expected. If i exit and re-luanch the app, the previous data sets are intact, but when i re-publish from flash any data stored from the previous release has disappeared.According to the documentation SQLConnection.open() will open a connection to the file supplied in the parameters and if it doesn't exist, it will create one...
It is only a "proof of concept" piece of code and it "lives" in the first frame of the timeline of the Flash IDE. What happens? When I compile my SWF (AIR for iPhone), I get this error:
I m trying a make a database on sqlite using actionscript3 and flex.I can browse through file and select a file using browseForOpen().I can get the url by Filename.url and storing it into a string type variable fileUrl:String.I m creating table like:
CREATE TABLE IF NOT EXISTS test_table (id INTEGER PRIMARY KEY AUTOINCREMENT,user_name TEXT,password TEXT ,fileurl TEXT)
i made a text input form for entering user_name and password like:
In flash, if you have a complicated graphic (like a complex diagram) that doesn't change much and you want to move/zoom/rotate it around, then does Flash perform better if you convert all graphics into symbols? Or does making symbols slow things down?
Background: Sometimes, you do things for so long, you can't remember why you started in the first place. Whenever I import graphics in flash (like from Illustrator, for example), I select everything, press cmd-B (or ctrl-B on Windows) repeatedly, "breaking apart" everything until I can't, anymore. Then I press F8 and create a symbol.
That's just what I've done for like the last 10 years. It's to the point where I don't even think about it, anymore. I vaguely remember doing this after learning that performance improves when you break apart graphics to create a symbol.
Now, I have a problem: I'm translating/rotating/scaling a massively complex, static diagram and it's too sloooow. I'm trying every technique I can think of to speed things up—every little bit counts.I've read this link and lots of others but I haven't come across the topic of creating symbols.
Summary:should I go back through and make everything a symbol? Should I go through and make everything NOT a symbol? Which is faster?