Ir para conteúdo

POWERED BY:

Arquivado

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

Ilano

ReportViewer com MySQL

Recommended Posts

Olá pessoal,

Estou desenvolvendo uma aplicação web usando o Visual Studio 2010 (linguagem VB) tendo como banco de dados o MySQL. Fiz os procedimentos abaixo:

- Instalei o MySQL Connector Net

- Referenciei minha aplicação ao MySql.Data.dll

- Criei a string de conexão como abaixo:


 

<system.data>
<DbProviderFactories>
   <clear/>
      <add name="cStrConexao" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.2.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
</DbProviderFactories>
</system.data>
   <appSettings>
      <add key="cStrConexao" value="server=localhost;user id=root;password=123456;port=3307;Connect Timeout=5000;persist security info=True;database=protocolo"/>
   </appSettings>

 

 

Mas ainda assim não consigo conectar o reportviewer ao MySQL. No ServerExplorer tentei adicionar uma conexão como nesta imagem, mas como vocês podem ver não aparece o MySQL na lista. Como fazer para que o MySQL apareça nas listas de conexão do Visual Studio?

Erro de string de conexão não pode ser pois já possuo cadastros que estão sendo alimentados e consultados sem problemas. Tentei adicionar no web.config a linha abaixo, mas ainda assim não consigo ver na lista o MySQL.


 

<connectionStrings>
   <add name="" connectionString="server=localhost;User Id=root;password=123456;port=3307;Persist Security Info=True;database=protocolo" providerName="MySql.Data.MySqlClient"/>
</connectionStrings>

 

 

Tentei também criar um DataSet, mas ele também não está pegando a string de Conexão (cStrConexao2).

Será que alguém poderia me ajudar?

Grato,

Ilano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei um nome na propriedade connectionString.

 

<connectionStrings> <add name="O Nome da sua String" connectionString="server=localhost;User Id=root;password=123456;port=3307;Persist Security Info=True;database=protocolo" providerName="MySql.Data.MySqlClient"/> </connectionStrings>

 

Faça isto para os outros dois também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já tentei, mas não traz o MySQL na fonte de dados.

Todos os processos de SELECT, INSERT, UPDATE e DELETE estão funcionando perfeitamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Isso mesmo. Era para ser exibido assim como está neste post.

 

 

Agora estou tentando gerar o relatório da seguinte forma:

 

 

 

 

 

Imports Microsoft.Reporting.WebFormsPartial Class administrador_relatorios_relatorios    Inherits System.Web.UI.Page    Private Cargo As New Protocolo.objCargos    Private Sub PovoaRelatorio()        Dim Ds As Data.DataSet        Dim DT As Data.DataTable        DT = Nothing        Ds = Cargo.Consultar("", "Cargo_Nome")        DT = Ds.Tables(0)        ReportViewer1.ProcessingMode = ProcessingMode.Local        ReportViewer1.LocalReport.ReportPath = "~\administrador\relatorios\rportCargo.rdlc"        ReportViewer1.LocalReport.DataSources.Clear()        ReportViewer1.LocalReport.DataSources.Add(New ReportDataSource("a008_cargos", DT))        ReportViewer1.DocumentMapCollapsed = True        ReportViewer1.LocalReport.Refresh()    End Sub    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load        If Not IsPostBack Then            PovoaRelatorio()        End If    End SubEnd Class

 

Mas está me retornando o erro:

 

A data source instance has not been supplied for the data source 'DataSet1'

 

Onde a008_cargos é o nome da tabela no MySQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, já instalei tudo! Eu não entendo o porque do MySQL não ser listado no DataSet ou em qualquer outro componente de conexão com o banco. O interessante é que eu consigo realizar consultas, inserts, update e delete na minha aplicação sem problemas, mas ao tentar listar não aparece nada, nem mesmo a string de conexão.

 

Veja estas imagens:

http://www.ilanocf.xpg.com.br/DataSet.png

http://www.ilanocf.xpg.com.br/DataSet2.png

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você consegue utilizar as querys porque você está chamando o MySQL.Data no código, isso é totalmente separado do resto.

 

Tente usar o <other> ou criar uma nova connection com o botão New Connection e mande outras imagens.

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.