Cara,
faltou um detalhe importante, você tem que gravar o caminho onde você
guardou banco de dados e isso você pode fazer com a API EncryptedLocalStore,
que grava uma variável em objeto gravado nos arquivos locais da aplicação.

ex.:

            private function init():void
            {
                var storedDBPath:ByteArray =
EncryptedLocalStore.getItem("dataBaseFile");
                if(storedDBPath)
                {
                    _databaseFile =
File.applicationStorageDirectory.resolvePath(storedDBPath.readUTFBytes(storedDBPath.length));

                    if(_databaseFile.exists)
                    {
                        connectDataBase();
                    }
                }
            }

            private function createDatabase():void
            {
                _databaseFile = new File();
                _databaseFile.browseForDirectory("Escolha o local do arquivo
do banco de dados.");
                _databaseFile.addEventListener(Event.SELECT,openDatabase);
            }

            private function openDatabase(event:Event):void
            {
                _databaseFile = new File(_databaseFile.nativePath+
File.separator +"promedic.db");

                connectDataBase();
            }

            private function connectDataBase():void
            {
                try
                {
                    var sqlConnection:SQLConnection = new SQLConnection();
                    sqlConnection.addEventListener(SQLEvent.OPEN,
                        function(event:SQLEvent):void
                        {
                            dispatchEvent(event);

                            var storedDBPath:ByteArray = new ByteArray();

storedDBPath.writeUTFBytes(_databaseFile.nativePath);


EncryptedLocalStore.setItem("dataBaseFile",storedDBPath);
                        });
                    sqlConnection.open(_databaseFile, SQLMode.CREATE, false,
1024);
                    Context.setAttribute("sqlConnection", sqlConnection);
                }
                catch (error:SQLError)
                {
                    if (error.errorID ==
EncryptionKeyGenerator.PASSWORD_ERROR_ID)
                    {
                        statusMessage.text = "Invalid password";
                    }
                    else
                    {
                        statusMessage.text = "Cannot open the database " +
error.message;
                    }
                }
            }

Tiago Lopes : Desenvolvedor Flex e Flash
Fone: 85 8896.4855
www.tiagolopes.pro.br


2009/7/15 Tiago Lopes <[email protected]>

> Cara,
> eu já passei por isso... como eu resolvi, pra usar banco de dados no AIR
> você precisa de um File pra carregar o banco, dai quando você vai criar o
> banco você pode dar um Browse no arquivo ou pasta desejado.
>
> ex.:
>
> private function createDatabase():void
>  {
> _databaseFile = new File();
> _databaseFile.browseForDirectory("Escolha o local do arquivo do banco de
> dados.");
> _databaseFile.addEventListener(Event.SELECT,openDatabase);
> }
>
> private function openDatabase(event:Event):void
>  {
> _databaseFile = new File(_databaseFile.nativePath+ File.separator
> +"promedic.db");
>
> connectDataBase();
> }
>
> private function connectDataBase():void
> {
> var sqlConnection:SQLConnection = new SQLConnection();
> sqlConnection.open(_databaseFile, SQLMode.CREATE, false, 1024);
> }
>
>
> ps:
> onde eu coloquei
> _databaseFile = new File(_databaseFile.nativePath+ File.separator
> +"promedic.db");
> o "_databaseFile.nativePath" você pode substituir pela String do caminho
> que você quiser, eu fiz dessa maneira pq eu estou desenvolvendo no Mac e a
> aplicação será utilizada no Windows e os sistemas de arquivos são
> diferentes, além de que nessa aplicação o usuário poderá escolher onde
> gravar o banco de dados.
>
> Tiago Lopes : Desenvolvedor Flex e Flash
> Fone: 85 8896.4855
> www.tiagolopes.pro.br
>
>
> 2009/7/15 Oswaldo Gusmao <[email protected]>
>
>
>> Alguem sabe como salvar um banco de dados do AIR, em um diretorio
>> escolhido por min.
>> exemplo c:/App teste/BD.bd
>> o Air tem sua opções pre definidas, mais eu queria salvar o bd em
>> outro lugar.
>>
>> Alguem sabe?
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---

Responder a