“455555”附近的语法不正确 - 当我尝试搜索数据库时

Incorrect syntax near '455555' - When i try to search on database

我的表单上有一个“搜索”字段,我有两个单选按钮,一个称为 RG,另一个称为 NOME,基本上这些是搜索条件:按名称或按 RG。按名称搜索工作正常,但搜索 RG 返回错误。下面是代码。

                if (rdbPorRG.Checked) // Faz consulta com o RG
                {
                    if (txtPesquisar.Text == "")
                    {
                        MessageBox.Show("Favor escolher um parâmetro de busca \r\n" + "e preencher o campo de pesquisa \r\n" + "para efetuar a consulta.", "Consultar Item", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    }
                    else
                    {
                        txtPesquisar.ReadOnly = true;
                        CmSQL.Remove(0, CmSQL.Length);
                        CmSQL.Append("SELECT * FROM TB_CADASTRO ");
                        CmSQL.Append("WHERE RG = " + Convert.ToInt64(txtPesquisar.Text) + " ");
                        SDR = clsConexao.ExecutarDataReader(CmSQL.ToString());

                        if (!SDR.Read()) // Lê os dados resgatados e exibe para o usuário.
                        {
                            MessageBox.Show("RG não encontrado.", "", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); txtPesquisar.Clear(); txtPesquisar.Focus(); txtPesquisar.ReadOnly = false;
                            return;
                        }
                        else
                        {
                            DS = clsConexao.ExecutarDataSet("SELECT ID, RG, NOME, ITENS_DOADOS AS 'ITENS DOADOS' FROM TB_CADASTRO WHERE RG " + Convert.ToInt64(txtPesquisar.Text) + " "); // Seleciona TUDO que está na tabela aluno no Banco de Dados.
                            DT = DS.Tables[0]; // Extrai a tabela 0 do DATASET
                            dgvRegistros.DataSource = DT;
                            txtPesquisar.ReadOnly = false;
                        }
                    }
                }

好像是这条线

DS = clsConexao.ExecutarDataSet("SELECT ID, RG, NOME, ITENS_DOADOS AS 'ITENS DOADOS' FROM TB_CADASTRO WHERE RG " + Convert.ToInt64(txtPesquisar.Text) + " ");

在其 where 子句上缺少一个“=”符号。尝试

SELECT ID, RG, NOME, ITENS_DOADOS AS 'ITENS DOADOS' FROM TB_CADASTRO WHERE RG = " + Convert.ToInt64(txtPesquisar.Text) + " "