`
宋科明
  • 浏览: 101577 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

SQL数据库连接

阅读更多

/**
 * Create Date: 2007-1-7 上午08:40:13
 * Create Author: Vniceboy
 * Email: Vniceboy@163.com
 * Company: Hsd zipper
 */

package DB;

import java.sql.*;

/**
 * <p>
 * 该类用于数据库的连接和SQL语句的执行
 * </p>
 *
 * @author vniceboy
 * @version 1.0
 * @inheritDoc DB.java
 * @see java.sql.Connection
 * @see java.sql.ResultSet
 * @see java.sql.Statement
 */

public class DB {
 // 定义数据库连接字符串,jdbc.odbc桥
 private final String sJdbcOdbcDriver = "sun.jdbc.odbc.JdbcOdbcDriver";

 // 定义数据库连接字符串, SQL连接
 private final String sSqlServerDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

 private Connection conn = null;

 private Statement stmt = null;

 public ResultSet rs = null;

 /**
  * <p>
  * 连接数据库: ODBC连接 SQLSERVER连接
  * </p>
  *
  * @throws Exception
  */

 // 数据库连接
 public boolean getConnection(final String sOdbcServer) {
  try {
   // 加载ODBC驱动器
   Class.forName(sJdbcOdbcDriver);
   // 建立连接
   conn = DriverManager.getConnection("jdbc:odbc:" + sOdbcServer);

   // 关闭自动提交
   conn.setAutoCommit(false);
   // 设定事务级别
   conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);
   // 创建一个JDBC声明
   stmt = conn.createStatement();

   System.out.println("jdbc:odbc:" + sOdbcServer + "   连接成功");
   return true;
  } catch (Exception e) {
   System.out.println(e.getMessage());
   e.printStackTrace();
   return false;
  }
 }

 public boolean getConnection(String sSqlServer, String sUserName,
   final String sPassWord) {
  if (sSqlServer.equals("") || sSqlServer == null) {
   sSqlServer = "127.0.0.1";
  }

  if (sUserName.equals("") || sUserName == null) {
   sUserName = "sa";
  }

  try {
   // 加载SQLDRIVER驱动器
   Class.forName(sSqlServerDriver);
   // 建立连接
   conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://"
     + sSqlServer + ":1433", sUserName, sPassWord);

   // 关闭自动提交
   conn.setAutoCommit(false);
   // 设定事务级别
   conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);
   // 创建一个JDBC声明
   stmt = conn.createStatement();

   System.out.println("SQLSERVER 连接成功");
   return true;
  } catch (Exception e) {
   System.out.println(e.getMessage());
   e.printStackTrace();
   return false;
  }
 }

 public boolean getConnection(String sSqlServer, String sDataBaseName,
   String sUserName, final String sPassWord) {
  if (sSqlServer.equals("") || sSqlServer == null) {
   sSqlServer = "127.0.0.1";
  }

  if (sUserName.equals("") || sUserName == null) {
   sUserName = "sa";
  }

  if (sDataBaseName != null && !sDataBaseName.equals("")) {
   sDataBaseName = ";DatabaseName=" + sDataBaseName;
  }

  try {
   // 加载SQLDRIVER驱动器
   Class.forName(sSqlServerDriver);
   // 建立连接
   conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://"
     + sSqlServer + ":1433" + sDataBaseName, sUserName,
     sPassWord);

   // 关闭自动提交
   conn.setAutoCommit(false);
   // 设定事务级别
   conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);
   // 创建一个JDBC声明
   stmt = conn.createStatement();
   System.out.println("SQLSERVER:[" + sSqlServer + "] 连接成功");
   return true;
  } catch (Exception e) {
   System.out.println(e.getMessage());
   e.printStackTrace();
   return false;
  }
 }

 /**
  * <p>
  * 关闭数据连接
  * </p>
  *
  * @throws SQLException
  * @see main(String[])
  */
 public void closeDB() {
  try {
   // Connection success
   if (conn != null) {
    // 在系统连接关闭之前,
    // 将所有未能及时提交的事务释放
    conn.commit();

    // 解除事务操作
    conn.setAutoCommit(true);
    // 关闭连接
    if (!conn.isClosed())
     conn.close();
   }
  } catch (SQLException se) {
   System.out.println(se.getMessage());
   se.printStackTrace();
  }
 }

 /**
  * <p>
  * 获取服务器端系统时间
  * </p>
  *
  * @return 时间字符串,格式形如"yyyy-mm-dd HH-MM" 查询出错返回null值
  */
 public String getSysDate() {
  String sSQL = "SELECT SUBSTRING(CONVERT(VARCHAR(16),GETDATE(),120),1,16) AS SYSDATE";
  try {
   rs = stmt.executeQuery(sSQL);
   while (rs.next()) {
    return (rs.getString("SYSDATE"));
   }
  } catch (SQLException se) {
   System.out.println(se.getMessage());
   se.printStackTrace();
  }
  return null;
 }

 /**
  * <p>
  * 执行查询数据库的SQL语句
  * </p>
  *
  * @param sql-要执行的SQL查询语句
  * @return 查询成功返回true,失败返回false
  * @see db.java
  */
 public boolean execQuery(String sql) {
  try {
   rs = stmt.executeQuery(sql);
   System.out.println(sql + "  执行成功");
   return true;
  } catch (SQLException se) {
   System.out.println(se.getMessage());
   se.printStackTrace();
  }
  return false;
 }

 /**
  * <p>
  * 执行更新数据库操作的SQL语句
  * </p>
  * SQL语句为INSERT,DELETE,UPDATE等更新操作
  *
  * @param sql-传入的待执行的SQL语句
  * @return int-操作成功时返回记录号,否则返回0表示操作不成功
  * @see db.java
  */
 public int execUpdate(String sql) {
  try {
   int i = stmt.executeUpdate(sql);
   conn.commit();

   System.out.println(sql + "  执行成功");
   return i;
  } catch (SQLException se) {
   System.out.println(se.getMessage());
   se.printStackTrace();

   try {
    conn.rollback();
   } catch (SQLException s) {
    System.out.println(s.getMessage());
    s.printStackTrace();
   }
  }
  return 0;
 }
}

分享到:
评论

相关推荐

    ifix数据与sql数据库连接

    ### IFIX 数据与 SQL 数据库连接详解 #### 一、SQL 设置步骤 为了实现 IFIX 与 SQL 数据库之间的连接,我们首先需要确保 SQL Server 的正常运行。以下是一些基本的配置步骤: 1. **配置管理器设置**: - 打开 ...

    ASP与SQL数据库连接代码 sql数据数据库数据库连接

    ASP与SQL数据库连接代码 sql数据数据库数据库连接,很实用,为建站准备

    matlab与sql数据库连接

    matlab与sql数据库连接,实例说明,M文件

    VB sql数据库连接通用模块

    "VB sql数据库连接通用模块"是一个可重用的组件,它允许开发者通过VB代码方便地与SQL数据库进行交互。这样的模块通常包含了连接字符串的创建、数据库的打开和关闭、SQL查询的执行以及结果集的处理等功能。 一个基本...

    sql数据库连接工具

    标题中的“sql数据库连接工具”指的是能够帮助用户与SQL(Structured Query Language)数据库进行交互的软件应用程序。这类工具通常提供图形用户界面(GUI),使得非编程背景的用户也能方便地执行SQL查询、管理...

    如何连接SQL数据库

    一、SQL数据库连接基础 SQL数据库连接涉及几个关键要素:数据库服务器、数据库名、用户名、密码以及连接驱动。以下是一般的连接步骤: 1. **选择驱动**: SQL数据库支持多种驱动,如JDBC(Java Database ...

    SQL数据库连接工具SqlDbx

    SqlDbx是一款强大的SQL数据库连接工具,专为数据库管理和开发人员设计,提供了高效、便捷的接口来访问和操作各种SQL数据库。它以其直观的用户界面和出色的数据导出功能著称,比传统的SQL Server管理工具如SQL Server...

    有关SQL数据库连接的DEMO

    SQL数据库连接是指通过编程或工具与SQL数据库建立通信的桥梁,以便执行查询、插入、更新或删除数据等操作。常见的SQL数据库有MySQL、PostgreSQL、Oracle和Microsoft SQL Server等。连接数据库通常需要以下关键信息:...

    SQL数据库连接和操作

    一、SQL数据库连接 1. 连接概念:连接是程序与数据库建立通信的过程,通过连接,程序可以发送查询、更新或删除等指令给数据库,并接收返回的结果。 2. 连接参数:连接通常需要提供数据库服务器的地址(IP或域名)...

    DataSql数据库连接

    在这个“DataSql数据库连接”教程中,我们将深入探讨如何有效地使用SQL(Structured Query Language)来访问和管理数据库。 SQL是标准的关系型数据库查询语言,用于创建、修改和查询数据库。它包括多种语句,如...

    sql 数据库连接方法

    SQL数据库连接主要是通过特定的API(应用程序编程接口)或驱动程序来实现的。这些接口允许应用程序与数据库管理系统交互,执行查询、插入、更新和删除等操作。常见的数据库系统如MySQL、PostgreSQL、Oracle和SQL ...

    浅谈ASP与SQL数据库连接的实现.pdf

    在详细介绍ASP与SQL数据库连接实现之前,需要先了解ASP与SQL的基本概念。ASP是由Microsoft公司开发的服务器端脚本环境,可以用来创建和运行动态网页或Web应用程序。它不是一种编程语言,而是一种技术,使得开发者...

    VS+SQL数据库连接

    - 在XML文件中,找到`&lt;connectionStrings&gt;`标签,这里可以添加数据库连接信息。 4. **配置连接字符串** - 连接字符串通常包含以下信息:数据库服务器名称、数据库名称、用户名和密码。示例: ``` ;Initial ...

    外文翻译外文翻译 SQL数据库连接知识

    在SQL数据库连接的知识中,了解如何与SQL Server建立连接是至关重要的。SQL Server 2000客户端通过一系列API(应用程序编程接口)、对象库和协议与服务器交互。这些技术允许不同类型的程序和应用访问和操作数据库。...

    C#.NET实例 图书管理系统 c#下SQL数据库连接

    《C#.NET 实例:图书管理系统与SQL数据库连接详解》 C#.NET 是微软公司推出的一种面向对象的编程语言,广泛应用于开发各种Windows应用程序。在本实例中,我们聚焦于利用C#.NET环境,特别是在Visual Studio 2008集成...

    postgres sql 数据库连接工具

    postgres sql 数据库连接工具

    Microsoft SQL 数据库连接字符串大全.pdf

    连接字符串官方文档:SQL Server,SQL Server 2005,ACCESS,Oracle,MySQL,Interbase,IBM DB2,Sybase,Informix,Ingres,Mimer SQL,Lightbase,PostgreSQL,Paradox,DNS,Firebird,Excel ,Text,DBF / ...

    heidisql数据库连接软件

    **HeidiSQL数据库连接软件详解** HeidiSQL是一款轻量级、高效且用户友好的数据库管理工具,尤其适合于MySQL、MariaDB、SQL Server、PostgreSQL和Oracle等数据库的管理和维护。这款软件以其简洁的界面和强大的功能在...

    sql.rar_java数据库连接_java连接_java连接数据库_sql数据库连接

    在IT行业中,数据库连接是应用程序与数据存储交互的基础。这里我们关注的是Java语言与SQL数据库的连接,这是许多企业级应用开发的核心技术。本压缩包"sql.rar"中包含的相关知识点主要围绕Java如何通过JDBC(Java ...

    ASP连接SQL2005数据库连接代码.

    无论采用哪种连接方式,在连接成功后,都需要检查连接状态,确保数据库连接可用。以下是连接状态判断的代码片段: ```vb If Conn.State = 2 Then Response.Write("正在连接") ElseIf Conn.State = 1 Then ...

Global site tag (gtag.js) - Google Analytics