Opa Pessoal estou com um problema.
Trabalho com java + flex.
E agora estou fazendo um projetinho com flexair e sqlite.
Criei uma classe sql para poder fazer os comandos.
E gerar o banco.
Ele dá o result do insert normal.
Mas quando executo o select e debugo ele o getResult.Data vem Nulo.
Obrigado.
package banco
{
import classes.Contatos;
import contatos.ContatosModel;
import flash.data.SQLConnection;
import flash.data.SQLResult;
import flash.data.SQLStatement;
import flash.events.SQLErrorEvent;
import flash.events.SQLEvent;
import flash.filesystem.File;
import mx.controls.Alert;
import mx.controls.Text;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
public class ContatosSql
{
private var file:File;
private var conn:SQLConnection = new SQLConnection();
private var sqlStatement:SQLStatement = new SQLStatement();
private var model:ContatosModel;
public function ContatosSql(m:ContatosModel)
{
model = m;
}
public function initiSqlLite():void{
file = File.documentsDirectory.resolvePath("contatos");
sqlStatement.sqlConnection = conn;
conn.open(file);
}
public function createTable():void{
initiSqlLite();
sqlStatement.text = "CREATE TABLE IF NOT EXISTS contatos ( " +
" oid INTEGER PRIMARY KEY AUTOINCREMENT, "+
" nome VARCHAR(200) NOT NULL, " +
" endereco VARCHAR(200) NOT NULL, " +
" cidade VARCHAR(120) NOT NULL, " +
" estado VARCHAR(3) NOT NULL, " +
" telefone VARCHAR(20) NOT NULL, " +
" celular VARCHAR(20) NOT NULL, " +
" email VARCHAR(200) NOT NULL, " +
" tipocontato VARCHAR(40) NOT NULL )";
sqlStatement.addEventListener(SQLEvent.RESULT, resultCreate);
sqlStatement.addEventListener(SQLErrorEvent.ERROR,faultSave);
sqlStatement.execute();
}
public function resultCreate(event:SQLEvent):void{
Alert.show("Criada a Tabela");
}
public function save():void{
sqlStatement.text = "INSERT INTO contatos ( " +
" nome, " +
" endereco, " +
" cidade, " +
" estado, " +
" telefone, " +
" celular, " +
" email, " +
" tipocontato " +
") VALUES ( " +
" 'Roberto', " +
" 'Rua Atanasio da Silva,75', " +
" 'Florianopolis', " +
" 'SC', " +
" '435345454', " +
" '84343448', " +
" 'rob.121@gmail.com', " +
" 'familia') ";
this.sqlStatement.addEventListener(SQLEvent.RESULT,resultSave);
this.sqlStatement.addEventListener(SQLErrorEvent.ERROR, faultSave);
sqlStatement.execute();
}
public function findAll():void{
var data:Array = new Array();
sqlStatement.text"SELECT * FROM contatos"
sqlStatement.addEventListener(SQLEvent.RESULT, resultFindAll);
sqlStatement.addEventListener(SQLErrorEvent.ERROR,faultSave);
sqlStatement.execute();
}
private function resultSave(event:SQLEvent):void{
Alert.show("Salvo com Sucesso");
}
private function faultSave(event:SQLErrorEvent):void{
Alert.show("Não Funciono");
}
private function resultFindAll(event:SQLEvent):void{
var resultado:Array = this.sqlStatement.getResult().data;
if(resultado !=null)
{
Alert.show("Find ok");
}
else{
Alert.show(event.toString());
}
}
}
}