日期:2014-05-17  浏览次数:20994 次

C#的SQL连接字串从textBox获取后如何允许全局调用?
整个程序里,有多个按钮要对SQL数据库进行操作,由于每个SQL的连接字串会有不同,所以用textBox填写,在程序运行时获取。
但现在有个问题,为了让全局调用SqlConnection,我按下面这样进行创建的,运行时会报错误:“ConnectingString属性尚未初始化”。
具体截图如下:





程序代码附后,请大家指点一下,是不是“SqlConnection conFrom = new SqlConnection(sqlText.sqlFrom);”这一句应该换个地方写?或者应该如何来写?请指点,谢谢!



namespace sqldatacopy
{
    //先创建全局sqlText类
    public class sqlText
    {
        public static string sqlFrom = "";  //用于保存来源SQL数据库的信息
        public static string sqlTo = "";    //用于保存目标SQL数据库的信息
    }

    
    
    public partial class Form1 : Form
    {
        
        //创建SQL数据连接对象(数据源)
        SqlConnection conFrom = new SqlConnection(sqlText.sqlFrom);

        //创建SQL数据连接对象(目标数据库)
        SqlConnection conTo = new SqlConnection(sqlText.sqlTo);

        //创建数据集(全局)
        DataSet ds = new DataSet();
        int i = 100;

        public Form1()
        {
            InitializeComponent();
        }
        
        //初始运行加载
        private void Form1_Load(object sender, EventArgs e)
        {
            sqlText.sqlFrom = this.textBox1.Text;
            sqlText.sqlTo = this.textBox2.Text;
            label1.Text = label1.Text + sqlText.sqlFrom; //显示来源SQL数据库的信息
            label2.Text = label2.Text + sqlText.sqlTo; //显示目标SQL数据库的信息

        }



        //清除无用数据
        private void button1_Click(object sender, EventArgs e)
        {
            using (SqlCommand cmd = new SqlCommand())//创建命令对象
            {
                try
                {
                    conFrom.Open();//打开数据库连接