Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Guiodai

Erro de sintaxe SQL no Excel

Recommended Posts

Olá, estou desenvolvendo uma solução que constrói uma Pivot Table no Excel a partir de uma base de dados SQL Server 2005. Quando rodo a página que executa o método que gera a planilha na minha máquina local (Windows XP Pro Português com Office 2007 Inglês) a planilha é gerada com a pivot table corretamente. No entanto, quando vou testar a aplicação no servidor de desenvolvimento (Windows Server 2003 Inglês com Office 2007 Português) a página retornada apresenta a mensagem "Erro de sintaxe SQL". A connection string e a query string utilizadas são as mesmas em ambas as situações. Também verifiquei a sintaxe do select e não há qualquer erro. Já pesquisei sobre o erro no google mas não encontrei nada.

O código com a linha de erro é o seguinte:

 

private void InsertData(ref Excel.Worksheet DataSheet, string connection, string select)

{

Excel.QueryTable SqlData;

try

{

SqlData = DataSheet.QueryTables.Add(connection,

DataSheet.get_Range("A1", Type.Missing), select);

SqlData.CommandType = Excel.XlCmdType.xlCmdSql;

//SqlData.CommandText = select;

}

catch

{

this.Quit();

throw new ArgumentException("Erro ao tentar conectar-se com o banco de dados.");

}

 

try

{

SqlData.Refresh(false); // Mensagem de erro aqui

do

{

System.Threading.Thread.Sleep(500);

} while (SqlData.Refreshing == true);

}

catch (Exception ex)

{

this.Quit();

throw new ArgumentException(ex.Message);

}

 

SqlData.Delete();

}

 

A string select passada para o método é:

 

string query = "SELECT ad.filial, ad.ano_resultado, " +

"ad.trimestre_resultado, ad.mes_resultado, " +

"ad.rentabilidade " +

"FROM Oportunidade.F0202101.vAnaliseDesempenho AS ad " +

"WHERE ad.ano_resultado > 2005 " +

"ORDER BY ad.ano_resultado, " +

"ad.trimestre_resultado, " +

"ad.mes_resultado, " +

"ad.filial";

 

Alguém tem alguma idéia do que pode estar acontecendo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, estou desenvolvendo uma solução que constrói uma Pivot Table no Excel a partir de uma base de dados SQL Server 2005. Quando rodo a página que executa o método que gera a planilha na minha máquina local (Windows XP Pro Português com Office 2007 Inglês) a planilha é gerada com a pivot table corretamente. No entanto, quando vou testar a aplicação no servidor de desenvolvimento (Windows Server 2003 Inglês com Office 2007 Português) a página retornada apresenta a mensagem "Erro de sintaxe SQL". A connection string e a query string utilizadas são as mesmas em ambas as situações. Também verifiquei a sintaxe do select e não há qualquer erro. Já pesquisei sobre o erro no google mas não encontrei nada.

O código com a linha de erro é o seguinte:

 

private void InsertData(ref Excel.Worksheet DataSheet, string connection, string select)

{

Excel.QueryTable SqlData;

try

{

SqlData = DataSheet.QueryTables.Add(connection,

DataSheet.get_Range("A1", Type.Missing), select);

SqlData.CommandType = Excel.XlCmdType.xlCmdSql;

//SqlData.CommandText = select;

}

catch

{

this.Quit();

throw new ArgumentException("Erro ao tentar conectar-se com o banco de dados.");

}

 

try

{

SqlData.Refresh(false); // Mensagem de erro aqui

do

{

System.Threading.Thread.Sleep(500);

} while (SqlData.Refreshing == true);

}

catch (Exception ex)

{

this.Quit();

throw new ArgumentException(ex.Message);

}

 

SqlData.Delete();

}

 

A string select passada para o método é:

 

string query = "SELECT ad.filial, ad.ano_resultado, " +

"ad.trimestre_resultado, ad.mes_resultado, " +

"ad.rentabilidade " +

"FROM Oportunidade.F0202101.vAnaliseDesempenho AS ad " +

"WHERE ad.ano_resultado > 2005 " +

"ORDER BY ad.ano_resultado, " +

"ad.trimestre_resultado, " +

"ad.mes_resultado, " +

"ad.filial";

 

Alguém tem alguma idéia do que pode estar acontecendo?

Tenta definir o Culture como PT-br

Mas naum sei se vai funciona..

 

PS:. Quer q eu responda nos 4 (QUARTO) tópicos? http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.