George Georgiou wrote: > I know that Flex 2 cannot 'query' a database directly. Instead, an > application language (such us ColdFusion or PHP) need to be used. However, I > have read that Flex 3 will be able to do that. In other words it will be > able to connect to a database directly and load/push data. Is that true?
No. There is better data integration with FlexBuilder 3, but it's in the form of wizards to help developers write server code side to talk to databases. Introductory Data Wizards: http://flexwiki.adobe.com/confluence/display/ADOBE/Flex+Builder+3+Planning#FlexBuilder3Planning-IntroductoryDataWizards WebService Introspection: http://flexwiki.adobe.com/confluence/display/ADOBE/Flex+Builder+3+Planning#FlexBuilder3Planning-WebServicesIntrospection > Also, I have been told that even with Flex2 there is a way (using a Java > JDBC driver) one can connect to a database and do the job. Is that really > true? Any tutorials for this ? This is somewhat correct, but a terrible idea. I repeat, a terrible idea. You're probably referring to the asSQL mySQL driver written in ActionScript: http://maclema.com/assql/ This works by creating a socket connection directly from the user's computer to a database exposed to the internet. The usersname and password are embedded in the .swf client to make the connection and perform queries. While it is *technically* feasible to build this sort of application, it's an absolutely terrible idea and leaves you wide open to anyone being able to hijack your database. * Your database will be exposed to the internet instead of behind a firewall, leaving it open for ANYONE to connect to it. In a normal setup, you expose your middleware (CF, PHP, etc.) to the internet and leave your database only accessible on your private network. This keeps your data protected. * The username/password have to be present somewhere client-side in order to make the connection. This means that it's either in the .swf, or sent to the .swf, or something like that.. If you look at the MXML code in the example, the username and password are right there in the MXML file, and get compiled into the .swf. This is *very easily* decompiled to get that information back out. Basically, you're giving away your login information because you're transmitting it to the client in some form or another so the client can use it to log in. The other option here is to ask the user to type in the database's username and password to log in before performing queries, but that's hardly an option at all. Essentially, if you take this approach, you're leaving your database wide open to outsiders and even inviting them in by giving them your login credentials. Do you really want to be repsonsible for another headline of "millions of private user information stolen due to a data breach"? Again, it's an absolutely terrible idea. In web application, you should be relying on on middleware to keep your database behind closed doors and keep your data protected. -d ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Create robust enterprise, web RIAs. Upgrade to ColdFusion 8 and integrate with Adobe Flex http://www.adobe.com/products/coldfusion/flex2/?sdid=RVJP Archive: http://www.houseoffusion.com/groups/Flex/message.cfm/messageid:4570 Subscription: http://www.houseoffusion.com/groups/Flex/subscribe.cfm Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.37
