使用MyDBase连接SQL Server

   使用ADO.NET自定义类MyDBase连接SQL Server数据库

  using System;

  using System.Data;

  using System.Data.SqlClient;

  public class MyDBase

  {

  bool ECode=false;

  string ES;

  SqlConnection cn=new System.Data.SqlClient.SqlConnection();

  DataSet Rs;

  public MyDBase(string MyDBServerName,string MyDataBaseName)

  {

  ECode = false;

  cn.ConnectionString="workstation id="+MyDBServerName+";packet size=4096;integrated security=SSPI;data source="+MyDBServerName+";persist security info=False;initial catalog="+MyDataBaseName;

  try

  {

  cn.Open();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  }

  }

  public MyDBase(string MyDBServerName, string MyDataBaseName, string sUerName, string sPasswd)

  {

  ECode = false;

  string sConn = "workstation id=" + MyDBServerName + ";packet size=4096;user id=" + sUerName + ";pwd=" + sPasswd + ";data source=" + MyDBServerName + ";persist security info=False;initial catalog=" + MyDataBaseName;

  cn.ConnectionString = sConn;

  try

  {

  cn.Open();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  }

  }

  public DataSet GetRecordset(string Sqls)

  {

  SqlCommand sqlCmd= new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  try

  {

  SqlDataAdapter adp = new SqlDataAdapter(sqlCmd);

  Rs = new DataSet();

  adp.Fill(Rs);

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  return null;

  }

  return (Rs);

  }

  public int ExecuteSQLScalar(string Sqls)

  {

  string s;

  SqlCommand sqlCmd= new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  sqlCmd.CommandType = CommandType.Text;

  try

  {

  s = sqlCmd.ExecuteScalar().ToString();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  return -1;

  }

  return(int.Parse(s));

  }

  public string ExecuteSQLScalarTOstring(string Sqls)

  {

  string s;

  SqlCommand sqlCmd = new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  sqlCmd.CommandType = CommandType.Text;

  try

  {

  s = sqlCmd.ExecuteScalar().ToString();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  return "-1";

  }

  return s;

  }

  public string ExecuteSQLWithTrans(string Sqls)

  {

  string s;

  SqlTransaction myTrans;

  myTrans=cn.BeginTransaction();

  SqlCommand sqlCmd= new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  sqlCmd.CommandType = CommandType.Text;

  sqlCmd.Transaction =myTrans;

  sqlCmd.ExecuteNonQuery();

  //Sqls="SELECT @@IDENTITY AS ID";

  sqlCmd.CommandText =Sqls;

  try

  {

  s = sqlCmd.ExecuteScalar().ToString();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  myTrans.Commit();

  return "";

  }

  myTrans.Commit();

  return(s);

  }

  public void ExecuteSQL(string Sqls)

  {

  SqlCommand sqlCmd= new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  sqlCmd.CommandType = CommandType.Text;

  try

  {

  sqlCmd.ExecuteNonQuery();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  }

  }

  public SqlDataReader DBDataReader(string Sqls)

  {

  SqlCommand sqlCmd= new SqlCommand();

  sqlCmd.Connection = cn;

  sqlCmd.CommandText = Sqls;

  sqlCmd.CommandType = CommandType.Text;

  try

  {

  return sqlCmd.ExecuteReader(CommandBehavior.CloseConnection);

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  return null;

  }

  }

  public void DBClose()

  {

  try

  {

  cn.Close();

  }

  catch (Exception e)

  {

  ES = e.Message;

  ECode = true;

  }

  }

  public bool ErrorCode()

  {

  return ECode;

  }

  public string ErrMessage()

  {

  return ES;

  }

  ~MyDBase()

  {

  //if (cn.State==ConnectionState.Open ) cn.Close();

  }

  }

时间: 2024-08-04 00:31:17

使用MyDBase连接SQL Server的相关文章

远程连接sql server 2000服务器的解决方案

server|服务器|解决 远程连接sql server 2000服务器的解决方案 一 看ping 服务器IP能否ping通. 这个实际上是看和远程sql server 2000服务器的物理连接是否存在.如果不行,请检查网络,查看配置,当然得确保远程sql server 2000服务器的IP拼写正确. 二 在Dos或命令行下输入telnet 服务器IP 端口,看能否连通. 如telnet 202.114.100.100 1433 通常端口值是1433,因为1433是sql server 2000

防止ADO连接SQL Server时的隐式连接

ado|server 防止ADO连接SQL Server时的隐式连接Report Date:   2002/9 Prepared by:     郑            昀 Article last modified on 2002-9 The information in this article applies to: ü         Microsoft SQL Server 2000,7.0 ü         Microsoft ADO 2.5问题陈述:数据库服务器:Microso

php程序来连接SQL Server数据库的通用类

很多朋友问我如何用php程序来连接SQL Server数据库的通用类,其实这个并不是很难的,关键是一点点仔细,一点点耐心,用激情去理解 <?   class DB {    var $Host = "192.168.0.199"; // Hostname of our MySQL server    var $Database = "test"; // Logical database name on that server    var $User = &q

连接SQL SERVER的公共类(转)

server 连接SQL SERVER的公共类    blestwq(原作)    '*****************************************************************************************************'//开始日期:2002年5月27日'//结束日期:2002年5月27日'*********************************************************************

jdbc连接SQL Server数据库的注意事项及编程应用实例

首先,关于数据库的安装方法在本文中就不再累赘,详情请见我的上一篇博客. http://cq520.iteye.com/admin/blogs/1982097 不过需要注意的是,由于装有Windows操作系统下的电脑都默认有SQL Server,所以大家可以打开自己 的电脑看一下自己的电脑里面是哪个SQL Server 版本(在开始菜单中找到Microsoft SQL Server文件夹 ,后面的版本号就是本机的SQL Server 版本). 不过系统自带的SQL Server可能并没有管理工具(

简述VC_ADO连接SQL SERVER时连接字符串的模式

一.连接SQL SERVER的第一种连接字串: 是针对数据库身份验证模式为"SQL SERVER 和 windows"而言, 连接字串为: CString strConn; strConn = "Provider = SQLOLEDB.1;\ Persist Security Info = true;\ User ID = sa;\ Password=123456;\ Initial Catalog = tempdb;\ Data Source = 127.0.0.1&quo

在非SQL客户端使用命令行方式定期连接SQL Server服务器

在非SQL客户端使用命令行方式定期连接SQL Server 服务器并模拟用户查询操作,同时输出信息内容 一个很长的标题,实现的功能就是尽量使用非人力的方式模拟人去做一件事情,为了便于记录,将他们输出成文件方便查阅. 图形界面方式,使用微软自己的ConnMaker.exe,或者Microsoft 数据连接(系统自带,建立一个后缀为.udl的文件即可体验),进行可视化的操作. Figure 1使用ConnMaker.exe创建的可视化连接查询实例 不过这次用户的需求是因为他们在尝试进行连接到SQL服

连接SQL SERVER的公共类VB.NET

本文介绍连接SQL SERVER的公共类VB.NET. *************************************************************************'//开始日期:2002年5月27日 '//结束日期:2002年5月27日 '*********************************************************************** Option Explicit On 'Option Strict On '

在登录触发器错误情况下连接SQL Server

如果你创建了一个登录触发器,并且在这个触发器中有一些不好的代码,那么当你尝试着登录时,你将会得到一个类似于图一显示的错误: 图一 如果不能很好地执行登录触发器,那么将会导致登录失败. 例如,如果创建了这个触发器,那么就可以设计下面的代码来达到失败的目的. CREATE TRIGGER BadLogonTrigger ON ALL SERVER FOR LOGON AS BEGIN INSERT INTO BadDB.dbo.SomeTable VALUES ('Test'); END; GO 没