c#中连接数据库关于sqlconnection的用户sa无法登录的问题

来源:互联网 发布:淘宝短款溥针织开衫 编辑:程序博客网 时间:2024/05/18 02:26

今天看了使用Connection对象连接数据库,首先在SQLsever2005中附加了一个数据库MDF文件,然后在Visual studio中输入了以下SQLconnection代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;

namespace CloseSQL
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        SqlConnection conn;        //声明一个SqlConnection对象
        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text == "")      //判断是否输入数据库名称
            {
                MessageBox.Show("请输入数据库名称");  //如果没有输入则弹出提示
            }
            else          //否则
            {
                try         //调用try…catch语句
                {
                    //建立连接数据库字符串
                    string str = "server=.;database=" + textBox1.Text.Trim() + ";uid=sa;pwd=";
                    conn = new SqlConnection(str);   //创建一个SqlConnection对象
                    conn.Open();      //打开连接
                    if (conn.State == ConnectionState.Open) //判断当前连接状态
                    {
                        MessageBox.Show("连接成功");  //弹出提示
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);   //出现异常弹出错误信息
                    textBox1.Text = "";     //清空文本框
                }
            }
        }
        private void button2_Click(object sender, EventArgs e)
        {
            try              //调用try…catch语句
            {
                string str = "";      //声明一个字符串变量
                conn.Close();       //使用Close方法关闭连接
                if (conn.State == ConnectionState.Closed)//判断当前连接是否关闭
                {
                    str = "数据库已经成功关闭\n";  //如果关闭则弹出提示
                }
                conn.Open();       //重新打开连接
                if (conn.State == ConnectionState.Open) //判断连接是否打开
                {
                    str += "数据库已经成功打开\n";  //弹出提示
                }
                richTextBox1.Text = str;    //向richTextBox1中添加提示信息
            }
            catch (Exception ex)
            {
                richTextBox1.Text = ex.Message;   //出现异常,将异常添加到richTextBox1中
            }
        }
        private void button3_Click(object sender, EventArgs e)
        {
            try          //调用try…catch语句
            {
                conn.Dispose();      //使用Dispose方法关闭连接
                conn.Open();      //重新使用Open方法打开会出现异常
            }
            catch (Exception ex)
            {
                richTextBox1.Text = ex.Message;  //将异常显示在richTextBox1控件中
            }
        }
    }
}

 

结果输入数据库名,总是提示连接失败,问题出在此行代码  string str = "server=.;database=" + textBox1.Text.Trim() + ";uid=sa;pwd=";   这里的pwd 都是SQL中建立的sa用户的密码,由于我所使用的sa用户密码是123456,所以应改为pwd=123456  ,这样就OK了。


转自:http://blog.sina.com.cn/s/blog_6d007af80100nl6f.html

原创粉丝点击