干嘛不把连接放到一个公用的类中,再由不同的Form来调用呢?

解决方案 »

  1.   

    (1)先定义一个类(C#中无全局变量,但可以通过这种方式实现)
    namespace aaa
    {
       public class Global   
       {
    public static SqlConnection connection;   //数据库连接
       }
    }(2)程序启动时初始化数据库连接(只需一次)
    connStr=@"uid=sa;pwd=sa;server=...;database=...";
    Global.connection = new SqlConnection(connStr);
    (3)以后执行命令时打开,执行完后关闭:
    try
    {
    //打开数据库连接
    if(Global.connection.State==ConnectionState.Closed) Global.connection.Open();SqlCommand cmd = new SqlCommand ("...",Global.connection);
    cmd.CommandType=CommandType.Text;
    ......

    //关闭数据库连接
    if(Global.connection.State==ConnectionState.Open) Global.connection.Close();
    }
    catch(SqlException sqle)
    {
    throw sqle;
    }