Usuário com melhor resposta
consultar

Pergunta
-
ola pessoal eu preciso duma ajuda urgente mesmo o qnto antes tenho q altera meu tcc
tem um form consulta
aqui vai as imagens
http://imageshack.us/photo/my-images/192/semttulosjk.jpg/
http://imageshack.us/photo/my-images/832/semttulo2kw.jpg/na segunda imagem eu selecionei a tabela clientes e o campo nome cliente , por exemplo ali digitei alan, eu queria q ele me mostrasse por exemplo todos os dados da tabela clientes com os campos no datagridview mas dai so do alan nao apareça os otros q nem ali na imagem, pra dexa mais claro todos os campos seriam codigo nome endereço bairro cidade cep uf cpf essas coisas.
aqui vai o codigo desse form
namespace BoBs_Informatica
{
public partial class frmConsulta : Telerik.WinControls.UI.RadForm
{
public frmConsulta()
{
InitializeComponent();
}
public string nometabela;
public string nomecampo;
private void frmConsulta_FormClosing(object sender, FormClosingEventArgs e)
{
// exibe mensagem de confirmaçao antes de fechar a aplicaçao
DialogResult opcaoSelecionada;
opcaoSelecionada = MessageBox.Show("Deseja sair da Consulta?",
"Consulta",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);
if (opcaoSelecionada.Equals(DialogResult.No))
{
e.Cancel = true;
}
}
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
////////////// Imprime o DataGridView
int iAlturaPag = this.printDocument1.DefaultPageSettings.PaperSize.Height; // Altura do Grid igual a altura da folha
int iLarguraPag = this.printDocument1.DefaultPageSettings.PaperSize.Width; // Largura do Grid igual a largura da folha
this.dgvConsulta.RowHeadersVisible = false; // Remove os marcadores de linhas antes de desenhar na folha
// Configura dimensões da folha de acordo com orientação
if (this.printDocument1.DefaultPageSettings.Landscape == true)
{
this.dgvConsulta.Width = iAlturaPag;
this.dgvConsulta.Height = iLarguraPag;
}
else
{
this.dgvConsulta.Width = iLarguraPag;
this.dgvConsulta.Height = iAlturaPag;
}
// Converte o DataGridView em uma imagem
Bitmap bm = new Bitmap(this.dgvConsulta.Width, this.dgvConsulta.Height);
this.dgvConsulta.DrawToBitmap(bm, new Rectangle(0, 0, this.dgvConsulta.Width, this.dgvConsulta.Height));
e.Graphics.DrawImage(bm, 30.0f, 80.0f);
this.dgvConsulta.RowHeadersVisible = true; // Habilita os marcadores de linhas depois de desenhar na folha
////////////// Imprime o Título do Relatório
Color customColor = Color.FromArgb(255, Color.Black);
SolidBrush shadowBrush = new SolidBrush(customColor);
FontFamily fontFamily = new FontFamily("Arial");
Font font = new Font(fontFamily, 20, FontStyle.Bold, GraphicsUnit.Pixel);
e.Graphics.DrawString("Relatório Personalizado", font, shadowBrush, 30.0f, 30.0f);
////////////// Imprime a Data e Hora do relatório
Color customColor1 = Color.FromArgb(255, Color.Black);
SolidBrush shadowBrush1 = new SolidBrush(customColor1);
FontFamily fontFamily1 = new FontFamily("Arial");
Font font1 = new Font(fontFamily1, 12, FontStyle.Bold, GraphicsUnit.Pixel);
String strDataHoraRel = DateTime.Now.Day + "/" +
DateTime.Now.Month + "/" +
DateTime.Now.Year + " " +
DateTime.Now.Hour + ":" +
DateTime.Now.Minute;
if (this.printDocument1.DefaultPageSettings.Landscape == true) // Reposiciona Data/Hora dependendo da orientação do papel
e.Graphics.DrawString(strDataHoraRel, font1, shadowBrush1, 1000.0f, 35.0f);
else
e.Graphics.DrawString(strDataHoraRel, font1, shadowBrush1, 700.0f, 35.0f);
////////////// Desenha uma linha para separar o cabeçalho dos dados do relatório
Pen myPen = new Pen(shadowBrush, 3.0f);
Point point1 = new Point(30, 60);
Point point2 = new Point(1200, 60);
e.Graphics.DrawLine(myPen, point1, point2);
}
private void radioButton1_CheckedChanged(object sender, EventArgs e)
{
// Modificar as propriedades do papel
if (rbPaisagem.Checked == true)
this.printDocument1.DefaultPageSettings.Landscape = true; // Orientação: Retrato = false | Paisagem = true
else if (rbRetrato.Checked == true)
this.printDocument1.DefaultPageSettings.Landscape = false; // Orientação: Retrato = false | Paisagem = true
else { }
}
private void radioButton2_CheckedChanged(object sender, EventArgs e)
{
// Modificar as propriedades do papel
if (rbPaisagem.Checked == true)
this.printDocument1.DefaultPageSettings.Landscape = true; // Orientação: Retrato = false | Paisagem = true
else if (rbRetrato.Checked == true)
this.printDocument1.DefaultPageSettings.Landscape = false; // Orientação: Retrato = false | Paisagem = true
else { }
}
private void radButton4_Click(object sender, EventArgs e)
{
//printDocument1.Print();
printPreviewDialog1.ShowDialog();
}
private void frmConsulta_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.C)
{
// radButton1.PerformClick();
}
if (e.KeyCode == Keys.A)
{
//radButton2.PerformClick();
}
if (e.KeyCode == Keys.O)
{
//radButton3.PerformClick();
}
if (e.KeyCode == Keys.I)
{
radButton4.PerformClick();
}
}
- Movido AndreAlvesLimaModerator segunda-feira, 11 de julho de 2011 11:55 (De:Visual Studio - Geral)
Respostas
-
Alan,
Os SELECTs que você está utilizando só estão retornando o campo selecionado ("SELECT " + nomeCampo "FROM "...)... Para retornar todos os campos da tabela, ao invés de somente esse, execute um SELECT * ao invés de SELECT nomeCampo...
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Sugerido como Resposta Fernando Henrique Inocêncio Borba FerreiraMicrosoft employee, Moderator quarta-feira, 20 de julho de 2011 12:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 8 de agosto de 2011 16:38
-
Alan,
Aí o seu SELECT teria que conter a cláusula WHERE, ficando mais ou menos assim:
"SELECT * FROM " + nometabela + " WHERE " + nomecampo + " LIKE '%" + textBox1.Text + "%' ORDER BY " + nomecampo + " ASC"
Acho importante você dar uma renomeada nos seus controles para que eles tenham mais sentido... textBox1, label6, etc., não dizem nada e você vai ter problema com a manutenção desse código no futuro se não arrumar isso nesse momento... Outra coisa é utilizar o conceito de parâmetros do ADO.NET ao invés de ficar concatenando variáveis para montar o SELECT:
http://www.csharp-station.com/Tutorials/AdoDotNet/Lesson06.aspx
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima
- Editado AndreAlvesLimaModerator segunda-feira, 18 de julho de 2011 12:28 ajustando select
- Sugerido como Resposta Fernando Henrique Inocêncio Borba FerreiraMicrosoft employee, Moderator quarta-feira, 20 de julho de 2011 12:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 8 de agosto de 2011 16:38
Todas as Respostas
-
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (label4.Text == "")
{
MessageBox.Show("Selecione uma Tabela!", "Tabela Não foi Selecionada!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
if (label6.Text == "")
{
MessageBox.Show("Selecione um Campo!", "Campo Não foi Selecionado!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
SqlConnection conn;
SqlCommand comm;
SqlDataReader reader;
// Lista que armazena os registros encontrados no banco de dados
// que possuem strings similares às digitadas na textbox.
AutoCompleteStringCollection namesCollection = new AutoCompleteStringCollection();
// Lê a string que representa os dados da conexão,
// contidos no arquivo app.config
string connectionString = Properties.Settings.Default.bobsConnectionString;
// Inicializa a conexão com o Banco de Dados
conn = new SqlConnection(connectionString);
// Cria um comando SQL para seleção de dados na tabela
comm = new SqlCommand("SELECT " + nomecampo + " FROM " + nometabela + " ORDER BY " + nomecampo + " ASC", conn);
try
{
try
{
// Abre a Conexão com o BD
conn.Open();
}
catch (Exception error)
{
MessageBox.Show(error.Message,
"Erro ao abrir conexão com o Banco de Dados",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
try
{
// Executa o Commando SQL
reader = comm.ExecuteReader();
if (reader.HasRows == true)
{
while (reader.Read())
namesCollection.Add(reader[nomecampo].ToString());
}
else
{
MessageBox.Show("Data not found");
}
// Fecha o reader
reader.Close();
// DataGridView
dgvConsulta.DataSource = bindingSource1;
String selectCommand = "select " + nomecampo + " from " + nometabela;
SqlDataAdapter dataAdapter = new SqlDataAdapter(selectCommand, connectionString);
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
dgvConsulta.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
// Existem 3 opções para preencher a textBox.
// Escolha uma das opções abaixo:
textBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
//textBox1.AutoCompleteMode = AutoCompleteMode.Append;
//textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
textBox1.AutoCompleteCustomSource = namesCollection;
}
catch (Exception error)
{
MessageBox.Show(error.Message,
"Erro ao executar comando SQL",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch { }
finally
{
// Termina a conexão com o banco de dados
conn.Close();
}
}
}
}
private void frmConsulta_Load(object sender, EventArgs e)
{
// TODO: This line of code loads data into the '_C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaVendedor' table. You can move, or remove it, as needed.
this.tabelaVendedorTableAdapter.Fill(this._C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaVendedor);
// TODO: This line of code loads data into the '_C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaProdutos' table. You can move, or remove it, as needed.
this.tabelaProdutosTableAdapter.Fill(this._C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaProdutos);
// TODO: This line of code loads data into the '_C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaFornecedor' table. You can move, or remove it, as needed.
this.tabelaFornecedorTableAdapter.Fill(this._C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaFornecedor);
// TODO: This line of code loads data into the '_C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaUsuarios' table. You can move, or remove it, as needed.
this.tabelaUsuariosTableAdapter.Fill(this._C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaUsuarios);
// TODO: This line of code loads data into the '_C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaClientes' table. You can move, or remove it, as needed.
this.tabelaClientesTableAdapter.Fill(this._C__BOBS_INFORMATICA_BOBS_INFORMATICA_BOBS_MDFDataSet.TabelaClientes);
} -
private void TabelaClientes_CheckedChanged(object sender, EventArgs e)
{
{
if (nometabela == "")
{
label4.Text = nometabela;
nometabela = TabelaClientes.Text;
}
else
{
label4.Text = "";
nometabela = "";
nometabela = TabelaClientes.Text;
label4.Text = nometabela;
}
if (TabelaClientes.Checked)
{
CodigoCliente.Enabled = true;
NomeCliente.Enabled = true;
Endereco.Enabled = true;
Cidade.Enabled = true;
CPF.Enabled = true;
CodigoFornecedor.Enabled = false;
NomeFornecedor.Enabled = false;
CNPJ.Enabled = false;
Email.Enabled = false;
CodigoProduto.Enabled = false;
NomeProduto.Enabled = false;
Categoria.Enabled = false;
CodigoUsuario.Enabled = false;
Usuario.Enabled = false;
NivelAcesso.Enabled = false;
CodigoVendedor.Enabled = false;
NomeVendedor.Enabled = false;
}
}
}
private void TabelaFornecedor_CheckedChanged(object sender, EventArgs e)
{
if (nometabela == "")
{
label4.Text = nometabela;
nometabela = TabelaFornecedor.Text;
}
else
{
label4.Text = "";
nometabela = "";
nometabela = TabelaFornecedor.Text;
label4.Text = nometabela;
}
if (TabelaFornecedor.Checked)
{
CodigoCliente.Enabled = false;
NomeCliente.Enabled = false;
Endereco.Enabled = true;
Cidade.Enabled = true;
CPF.Enabled = false;
CodigoFornecedor.Enabled = true;
NomeFornecedor.Enabled = true;
CNPJ.Enabled = true;
Email.Enabled = true;
CodigoProduto.Enabled = false;
NomeProduto.Enabled = false;
Categoria.Enabled = false;
CodigoUsuario.Enabled = false;
Usuario.Enabled = false;
NivelAcesso.Enabled = false;
CodigoVendedor.Enabled = false;
NomeVendedor.Enabled = false;
}
}
private void TabelaProdutos_CheckedChanged(object sender, EventArgs e)
{
if (nometabela == "")
{
label4.Text = nometabela;
nometabela = TabelaProdutos.Text;
}
else
{
label4.Text = "";
nometabela = "";
nometabela = TabelaProdutos.Text;
label4.Text = nometabela;
}
if (TabelaProdutos.Checked)
{
CodigoCliente.Enabled = false;
NomeCliente.Enabled = false;
Endereco.Enabled = false;
Cidade.Enabled = false;
CPF.Enabled = false;
CodigoFornecedor.Enabled = false;
NomeFornecedor.Enabled = false;
CNPJ.Enabled = false;
Email.Enabled = false;
CodigoProduto.Enabled = true;
NomeProduto.Enabled = true;
Categoria.Enabled = true;
CodigoUsuario.Enabled = false;
Usuario.Enabled = false;
NivelAcesso.Enabled = false;
CodigoVendedor.Enabled = false;
NomeVendedor.Enabled = false;
}
}
private void TabelaUsuarios_CheckedChanged(object sender, EventArgs e)
{
if (nometabela == "")
{
label6.Text = nometabela;
nometabela = TabelaUsuarios.Text;
}
else
{
label4.Text = "";
nometabela = "";
nometabela = TabelaUsuarios.Text;
label4.Text = nometabela;
}
if (TabelaUsuarios.Checked)
{
CodigoCliente.Enabled = false;
NomeCliente.Enabled = false;
Endereco.Enabled = false;
Cidade.Enabled = false;
CPF.Enabled = false;
CodigoFornecedor.Enabled = false;
NomeFornecedor.Enabled = false;
CNPJ.Enabled = false;
Email.Enabled = false;
CodigoProduto.Enabled = false;
NomeProduto.Enabled = false;
Categoria.Enabled = false;
CodigoUsuario.Enabled = true;
Usuario.Enabled = true;
NivelAcesso.Enabled = true;
CodigoVendedor.Enabled = false;
NomeVendedor.Enabled = false;
}
} -
private void TabelaVendedor_CheckedChanged(object sender, EventArgs e)
{
{
if (nometabela == "")
{
label6.Text = nometabela;
nometabela = TabelaVendedor.Text;
}
else
{
label4.Text = "";
nometabela = "";
nometabela = TabelaVendedor.Text;
label4.Text = nometabela;
}
if (TabelaVendedor.Checked)
{
CodigoCliente.Enabled = false;
NomeCliente.Enabled = false;
Endereco.Enabled = true;
Cidade.Enabled = true;
CPF.Enabled = true;
CodigoFornecedor.Enabled = false;
NomeFornecedor.Enabled = false;
CNPJ.Enabled = false;
Email.Enabled = false;
CodigoProduto.Enabled = false;
NomeProduto.Enabled = false;
Categoria.Enabled = false;
CodigoUsuario.Enabled = false;
Usuario.Enabled = false;
NivelAcesso.Enabled = false;
CodigoVendedor.Enabled = true;
NomeVendedor.Enabled = true;
}
}
}
private void CodigoCliente_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CodigoCliente.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CodigoCliente.Text;
label6.Text = nomecampo;
}
}
}
private void NomeCliente_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = NomeCliente.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = NomeCliente.Text;
label6.Text = nomecampo;
}
}
}
private void Endereco_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = Endereco.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = Endereco.Text;
label6.Text = nomecampo;
}
}
}
private void Cidade_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = Cidade.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = Cidade.Text;
label6.Text = nomecampo;
}
}
}
private void CPF_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CPF.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CPF.Text;
label6.Text = nomecampo;
}
}
} -
private void CodigoFornecedor_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CodigoFornecedor.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CodigoFornecedor.Text;
label6.Text = nomecampo;
}
}
}
private void NomeFornecedor_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = NomeFornecedor.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = NomeFornecedor.Text;
label6.Text = nomecampo;
}
}
}
private void CNPJ_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CNPJ.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CNPJ.Text;
label6.Text = nomecampo;
}
}
}
private void Email_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = Email.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = Email.Text;
label6.Text = nomecampo;
}
}
}
private void CodigoProduto_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CodigoProduto.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CodigoProduto.Text;
label6.Text = nomecampo;
}
}
}
private void NomeProduto_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = NomeProduto.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = NomeProduto.Text;
label6.Text = nomecampo;
}
}
}
private void Categoria_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = Categoria.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = Categoria.Text;
label6.Text = nomecampo;
}
}
}
private void CodigoUsuario_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CodigoUsuario.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CodigoUsuario.Text;
label6.Text = nomecampo;
}
}
}
private void Usuario_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = Usuario.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = Usuario.Text;
label6.Text = nomecampo;
}
}
}
private void NivelAcesso_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = NivelAcesso.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = NivelAcesso.Text;
label6.Text = nomecampo;
}
}
}
private void CodigoVendedor_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = CodigoVendedor.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = CodigoVendedor.Text;
label6.Text = nomecampo;
}
}
}
private void NomeVendedor_CheckedChanged(object sender, EventArgs e)
{
{
if (nomecampo == "")
{
label6.Text = nomecampo;
nomecampo = NomeVendedor.Text;
}
else
{
label6.Text = "";
nomecampo = "";
nomecampo = NomeVendedor.Text;
label6.Text = nomecampo;
}
}
}
}
} -
Assim ninguem vai te ajudar amigo. primeiro tinha de dizer qual e o problema, segundo apenas colocavas o codigo que gera erro.
Voce colocou todo o projecto aqui, ninguem tem tempo de ver o codigo todo, nos apenas ajudamos no forum. nao trabalhamos pra microsoft.
Por isso amigo, explica o porblema e coloca o codigo que gera o erro.
Obrigado.
One word frees us of all the weight and pain of life: that word is love. -
seguinte ele nao ta gerando nemhum erro oq eu quero é q no datagridview ele me mostre todos os campos da tabela cliente por exemplo
http://imageshack.us/photo/my-images/832/semttulo2kw.jpg/
nessa imagem ai so aparece o nome,por exemplo ali escolhi nome do cliente, ai eu quero q ele pesquise apartir do nome e apareça no datagridview o codigo, nome, endereço cpf essas coisas q eu tenho na tabela clientes entre otras tabelas tbm
esse é o codigo aonde ele faz a conexao com o banco eu so quero encrementar ele pra ele faça oq eu estou pedindo acima
private void textBox1_TextChanged(object sender, EventArgs e)
{
if (label4.Text == "")
{
MessageBox.Show("Selecione uma Tabela!", "Tabela Não foi Selecionada!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
if (label6.Text == "")
{
MessageBox.Show("Selecione um Campo!", "Campo Não foi Selecionado!", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
SqlConnection conn;
SqlCommand comm;
SqlDataReader reader;
// Lista que armazena os registros encontrados no banco de dados
// que possuem strings similares às digitadas na textbox.
AutoCompleteStringCollection namesCollection = new AutoCompleteStringCollection();
// Lê a string que representa os dados da conexão,
// contidos no arquivo app.config
string connectionString = Properties.Settings.Default.bobsConnectionString;
// Inicializa a conexão com o Banco de Dados
conn = new SqlConnection(connectionString);
// Cria um comando SQL para seleção de dados na tabela
comm = new SqlCommand("SELECT " + nomecampo + " FROM " + nometabela + " ORDER BY " + nomecampo + " ASC", conn);
try
{
try
{
// Abre a Conexão com o BD
conn.Open();
}
catch (Exception error)
{
MessageBox.Show(error.Message,
"Erro ao abrir conexão com o Banco de Dados",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
try
{
// Executa o Commando SQL
reader = comm.ExecuteReader();
if (reader.HasRows == true)
{
while (reader.Read())
namesCollection.Add(reader[nomecampo].ToString());
}
else
{
MessageBox.Show("Data not found");
}
// Fecha o reader
reader.Close();
// DataGridView
dgvConsulta.DataSource = bindingSource1;
String selectCommand = "select " + nomecampo + " from " + nometabela;
SqlDataAdapter dataAdapter = new SqlDataAdapter(selectCommand, connectionString);
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
dgvConsulta.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
// Existem 3 opções para preencher a textBox.
// Escolha uma das opções abaixo:
textBox1.AutoCompleteMode = AutoCompleteMode.Suggest;
//textBox1.AutoCompleteMode = AutoCompleteMode.Append;
//textBox1.AutoCompleteMode = AutoCompleteMode.SuggestAppend;
textBox1.AutoCompleteSource = AutoCompleteSource.CustomSource;
textBox1.AutoCompleteCustomSource = namesCollection;
}
catch (Exception error)
{
MessageBox.Show(error.Message,
"Erro ao executar comando SQL",
MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch { }
finally
{
// Termina a conexão com o banco de dados
conn.Close();
}- Editado Alan T. Menegolla sexta-feira, 8 de julho de 2011 18:36 errado
-
Vais ter de usar switch http://msdn.microsoft.com/en-us/library/06tc147t(v=vs.80).aspx
One word frees us of all the weight and pain of life: that word is love. -
Prezado(a),Estou migrando seu post para o fórum de Acesso a Dados.Por favor, das próximas vezes que tiver alguma dúvida relacionada a esse assunto, poste por lá.Obrigado pelo apoio.
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima -
André
tu nao pode me da uma ajuda so iniciante nisso e tenho q apresenta o TCC hj e malenge mando usar switch mas eu nao tenho nem ideia d como começar a fazer.
preciso q ele mostre no datagridview todos os campos da minha tabela
so q na pesquisa eu escolho um dos campos para pesquisar e ele mostra so esse campo e todos os dados relacionados a ele como na imagem
http://imageshack.us/photo/my-images/832/semttulo2kw.jpg/
obrigado pela atençao
-
Alan,
Os SELECTs que você está utilizando só estão retornando o campo selecionado ("SELECT " + nomeCampo "FROM "...)... Para retornar todos os campos da tabela, ao invés de somente esse, execute um SELECT * ao invés de SELECT nomeCampo...
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima- Sugerido como Resposta Fernando Henrique Inocêncio Borba FerreiraMicrosoft employee, Moderator quarta-feira, 20 de julho de 2011 12:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 8 de agosto de 2011 16:38
-
ta blz andre agora ele mostra todos os campos
e pra filtra tipo eu escolho a tabela clientes e quero pesquisa por nome cliente
ai no nome cliente digito alan por exemplo quero q so me mostre os campos q tem alan
no caso aqui mostra todos os nomes cadastrado
obrigado pela atençao
-
Alan,
Aí o seu SELECT teria que conter a cláusula WHERE, ficando mais ou menos assim:
"SELECT * FROM " + nometabela + " WHERE " + nomecampo + " LIKE '%" + textBox1.Text + "%' ORDER BY " + nomecampo + " ASC"
Acho importante você dar uma renomeada nos seus controles para que eles tenham mais sentido... textBox1, label6, etc., não dizem nada e você vai ter problema com a manutenção desse código no futuro se não arrumar isso nesse momento... Outra coisa é utilizar o conceito de parâmetros do ADO.NET ao invés de ficar concatenando variáveis para montar o SELECT:
http://www.csharp-station.com/Tutorials/AdoDotNet/Lesson06.aspx
André Alves de Lima
Microsoft MVP - Client App Dev
Visite o meu site: http://www.andrealveslima.com.br
Me siga no Twitter: @andrealveslima
- Editado AndreAlvesLimaModerator segunda-feira, 18 de julho de 2011 12:28 ajustando select
- Sugerido como Resposta Fernando Henrique Inocêncio Borba FerreiraMicrosoft employee, Moderator quarta-feira, 20 de julho de 2011 12:31
- Marcado como Resposta AndreAlvesLimaModerator segunda-feira, 8 de agosto de 2011 16:38