没有捕获任何异常,自己加一下,至于什么异常参照MSDNusing System;
using System.Collections;
using System.Data;
using System.Data.SqlClient; public class db
{


public string myConnectionString = "server=;uid=;pwd=;database=";
public SqlConnection myConnection = null;
public SqlTransaction myTrans = null;
public SqlCommand myCommand = null;
public SqlDataReader myReader = null;

public db()
{
//
// TODO: 在此处添加构造函数逻辑
//
} //***********************************************
//-- Modules Files:      ArrayListToString()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            ArrayList转化为StringArray
//-- Parameters Pasted:  myarraylist ArrayList型值
//-- Return Variables:  字符串型数组
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//*********************************************** public string[] ArrayListToString(ArrayList myarraylist)
{

Array myarray = myarraylist.ToArray(); string[] mystring = new string[myarraylist.Count];

for(int i=0;i<myarraylist.Count;i++)
{
mystring[i] = myarray.GetValue(i).ToString();
}
return mystring;

}
//***********************************************
//-- Modules Files:      DB_Connection()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            连接数据库
//-- Parameters Pasted:  无输入值
//-- Return Variables:  无返回值
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//*********************************************** public SqlCommand DB_Connection()
{

//连接数据库
this.myConnection = new SqlConnection(this.myConnectionString);
this.myConnection.Open(); //开始事务处理
this.myTrans = this.myConnection.BeginTransaction();

//对数据库执行Transact-SQL语句或存储过程
this.myCommand = new SqlCommand();
this.myCommand.Connection = this.myConnection;
this.myCommand.Transaction = this.myTrans; //获取或设置在终止执行命令的尝试并生成错误之前的等待时间
//myCommand.CommandTimeout = 20; return this.myCommand;
}
//***********************************************
//-- Modules Files:      Transact_Sql_Reader()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            执行sql
//-- Parameters Pasted:  myQuery select sql语句
//-- Return Variables:  无返回值
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//*********************************************** public void Transact_Sql_Reader(string myQuery)
{

myQuery  = myQuery+";commit;";
this.myCommand = DB_Connection();
this.myCommand.CommandText = myQuery;
this.myReader = myCommand.ExecuteReader();
this.myConnection.Close();

}
//***********************************************
//-- Modules Files:      Reader_GetValue()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            执行sql
//-- Parameters Pasted:  无输入值
//-- Return Variables:  列值结果集
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//***********************************************

public string[] Reader_GetValue()
{

ArrayList SelectArray = new ArrayList();
int i = 0; while(this.myReader.Read())
{ SelectArray.Add(this.myReader.GetChar(i));
i++;

} string[] SelectStringArray = ArrayListToString(SelectArray); return SelectStringArray;

}
//***********************************************
//-- Modules Files:      Reader_GetName()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            执行sql
//-- Parameters Pasted:  无输入值
//-- Return Variables:  列名结果集
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//*********************************************** public string[] Reader_GetName()
{

ArrayList NameArray = new ArrayList();

for(int i = 0;i<this.myReader.FieldCount;i++)
{ NameArray.Add(this.myReader.GetChar(i));
i++;

} string[] StringNameArray = ArrayListToString(NameArray); return StringNameArray;

}
//***********************************************
//-- Modules Files:      Transact_Sql_NonQuery()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            执行sql
//-- Parameters Pasted:  myQuery select sql语句
//-- Return Variables:  无返回值
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//***********************************************

public int Transact_Sql_NonQuery(string myQuery)
{

myQuery  = myQuery+";commit;";
this.myCommand = DB_Connection();
this.myCommand.CommandText = myQuery;
int NUM  = this.myCommand.ExecuteNonQuery();
this.myConnection.Close(); return NUM;

} //***********************************************
//-- Modules Files:      DB_Close()
//-- Modules Type:  public
//-- Author:             cngift
//-- Purpose:            关闭数据库
//-- Parameters Pasted:  无输入值
//-- Return Variables:  无返回值
//-- Compile Date:       2002-3-25
//-- Finally Amend Date: 2002-3-25
//*********************************************** public void DB_Close()
{
this.myConnection.Close();
} }

解决方案 »

  1.   

    感谢您使用微软产品。您可以直接通过ADO.NET连接远程数据库服务器就可以了,如下所示:
    myConnection = new SqlConnection("server=远程服务器IP地址;database=pubs;uid=sa;pwd=sa");
    如果,连接断了或者连接不上,一般会抛出System.Data.SqlClient.SqlException或System.Data.OleDb.OleDbException关于Exception的更详细信息,请参考如下MSDN连接:
    ms-help://MS.VSCC/MS.MSDNVS/cpref/html/frlrfSystemDataSqlClientSqlExceptionMembersTopic.htm
    ms-help://MS.VSCC/MS.MSDNVS/cpref/html/frlrfSystemDataOleDbOleDbExceptionMembersTopic.htm — 微软全球技术中心 VB支持中心本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
    为了为您创建更好的讨论环境,请参加我们的用户满意度调查(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。