峰峦@叠嶂 2023-03-18 10:24 采纳率: 99%
浏览 23
已结题

开发一个统计数据行的小窗体,查询是报错;

请教一下,开发一个统计数据行的小窗体(如下图1),但在查询中,总时好时坏,查询同一个数据库,前几次都好,多查询几次就会报错(如下图3,握手错误),另外,查询完一个,再修改登录参数时,想查询另一个数据库时,也会报错(如下图2,sa错误),报错的界面与程序代码如下,请各位给指导一下,谢谢;

img

img

img


private void button5_Click(object sender, EventArgs e)
        {

            String connectionString = String.Format("server={0};uid={1};pwd={2};", textBoxHost.Text, textBoxUser.Text, textBoxPassword.Text);

            string query = "SELECT name from sys.databases where name NOT IN ('master', 'tempdb', 'model', 'msdb')";
            
            SqlConnection sqlconn = new SqlConnection(connectionString);

            sqlconn.Open();


            //SqlString = "select name from master..sysdatabases";

            //加载数据并显示

            try
            {
                MessageBox.Show("数据库连接成功!");
                //查询条件和SqlConnection连接
                //SqlCommand cmd = new SqlCommand(SqlString, sqlconn);
                //数据适配器
                //SqlDataAdapter sda = new SqlDataAdapter();
                //sda.SelectCommand = cmd;
                //DataTable存储数据
                //DataTable dt = new DataTable();
                //sda.Fill(dt);
                //dataGridView1.DataSource = dt;

            }

            catch (Exception ex)
            {
                MessageBox.Show("数据库连接失败,请填写准确连接参数");
                return;
            }

            finally
            {
                conn.Close();
            }
            using (SqlConnection connection = new SqlConnection(connectionString))
            {
                try
                {
                    connection.Open();
                    SqlCommand command = new SqlCommand(query, connection);
                    SqlDataReader reader = command.ExecuteReader();

                    while (reader.Read())
                    {
                        string dbName = reader.GetString(0);
                        comboBox1.Items.Add(dbName);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: " + ex.Message);
                }
            }

            
        }
  • 写回答

1条回答 默认 最新

  • threenewbee 2023-03-18 10:43
    关注

    检查你的sql连接字符串,登录模式或者sa密码不对

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月27日
  • 已采纳回答 3月19日
  • 修改了问题 3月18日
  • 修改了问题 3月18日
  • 展开全部

悬赏问题

  • ¥15 Stata链式中介效应代码修改
  • ¥15 latex投稿显示click download
  • ¥15 请问读取环境变量文件失败是什么原因?
  • ¥15 在若依框架下实现人脸识别
  • ¥15 网络科学导论,网络控制
  • ¥100 安卓tv程序连接SQLSERVER2008问题
  • ¥15 利用Sentinel-2和Landsat8做一个水库的长时序NDVI的对比,为什么Snetinel-2计算的结果最小值特别小,而Lansat8就很平均
  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错