关闭

SQL Server 数据库链接封

172人阅读 评论(0) 收藏 举报
分类:
package util;

/**
 *创建连接数据库的相关服务,方便调用 
 *@author  wu
 */
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;

public class jdbcutil {
	private static final String DRIVER_CLASS_NAME;
	private static final String URL;
	private static final String USER_NAME;
	private static final String PASSWORD;

	public static Connection getSqlServerConn() {
		return null;

	}

	// 设定数据库相关参数
	static {
		DRIVER_CLASS_NAME = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
		URL = "jdbc:sqlserver://115.156.***.*:1433;databaseName=SpringJdbcTest";
		USER_NAME = "sa";
		PASSWORD = "123456";
	}

	public static Connection getconnection() {
		Connection conn = null;
		try {
			Class.forName(DRIVER_CLASS_NAME);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		try {
			conn = DriverManager.getConnection(URL, USER_NAME, PASSWORD);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return conn;
	}

	// 测试数据库链接
	public static void main(String[] args) throws SQLException {
		Statement stmt = null;
		ResultSet rs = null;
		String SQL = "SELECT TOP 5 * FROM bookInfo";
		jdbcutil jd = new jdbcutil();
		Connection conn = jd.getconnection();
		try {
			stmt = conn.createStatement();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		System.out.println(SQL);

		try {
			rs = stmt.executeQuery(SQL);
		} catch (SQLException e) {
			e.printStackTrace();
		}
		System.out.println(rs);
		
		stmt.close();
		conn.close();
//		网络测试
		
		  ResultSetMetaData rsmd = rs.getMetaData();
		    int columnsNumber = rsmd.getColumnCount();
		    while (rs.next()) {
		        for (int i = 1; i <= columnsNumber; i++) {
		            if (i > 1) System.out.print(",  ");
		            String columnValue = rs.getString(i);
		            System.out.print(columnValue + " " + rsmd.getColumnName(i));
//		            System.out.println("列:"+columnsNumber);
		        }
		        System.out.println("");
		    }
		
	}

	// 执行sql语句
	public static boolean exeSql(String sql) {
		Connection conn = null;
		Statement stmt = null;
		try {
			conn = jdbcutil.getconnection();
			stmt = conn.createStatement();
			stmt.executeUpdate(sql);
		} catch (SQLException e) {
			e.printStackTrace();
			return false;
		} finally {
			closeConnection(stmt, conn);
		}
		return true;
	}

	/**
	 * 关闭Statement
	 * 
	 * @param stmt
	 */
	private static void closeStatement(Statement stmt) {
		if (stmt != null) {
			try {
				stmt.close();
			} catch (Exception e) {
				System.out.println(e.getMessage());
			}
		}
	}

	/**
	 * 关闭Statement、Connection
	 * 
	 * @param stmt
	 * @param con
	 */
	private static void closeConnection(Statement stmt, Connection con) {
		closeStatement(stmt);
		closeConnection(con);
	}

	/**
	 * 关闭Connection
	 * 
	 * @param con
	 */
	private static void closeConnection(Connection con) {
		if (con != null) {
			try {
				con.close();
			} catch (Exception e) {
				System.out.println(e.getMessage());
			}
		}

	}
}

0
0
查看评论

跨数据库链接查询-sqlserver

--用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset('SQLOLEDB' ,'sql服务器名';'用户名';...
  • qq_16291159
  • qq_16291159
  • 2017-02-15 17:02
  • 745

SQL Server 已封鎖元件 'Ad Hoc Distributed Queries'

SQL Server 已封鎖元件 Ad Hoc Distributed Queries錯誤訊息:SQL Server 已封鎖元件 Ad Hoc Distributed Queries 的 STATEMENT OpenRowset/OpenDatasource 之存取,因為此元件已經由此伺服器的安全性...
  • niki190
  • niki190
  • 2008-09-24 09:01
  • 1307

jdbc数据库链接(sql server)

private static String dbName = ""; private static String user = ""; private static String password = ""; pri...
  • mjxjwx
  • mjxjwx
  • 2017-09-07 14:10
  • 148

SQL数据库操作命令大全

SQL数据库操作命令大全
  • qq_26058749
  • qq_26058749
  • 2017-11-16 16:05
  • 138

8、SQL Server:row_number的用法,存储过程分页

本文来自:http://www.studyofnet.com/news/180.html 本文导读:ROW_NUMBER()函数将针对SELECT语句返回的每一行,从1开始编号,赋予其连续的编号。在查询时应用了一个排序标准后,只有通过编号才能够保证其顺序是一致的,当使用ROW_NUMBER...
  • xushaozhang
  • xushaozhang
  • 2017-02-16 13:52
  • 428

sqlserver 高效分页的存储过程 基于ROW_NUMBER()

USE [LotteryData] GO /****** Object: StoredProcedure [dbo].[sp_GetLotteryOrderByWhere] Script Date: 01/06/2011 19:20:40 ******/ SET ANSI_NULLS ON ...
  • hulele2009
  • hulele2009
  • 2013-08-29 16:33
  • 1105

SQL SERVER 2005开启xp_cmdshell的方法

 SQL Server 已封鎖元件 xp_cmdshell 的 程序 sys.xp_cmdshell 之存取,因為此元件已經由此伺服器的安全性組態關閉。系統管理員可以使用 sp_configure 來啟用 xp_cmdshell 的使用。用下面一句话就可以了解决了。EXEC sp_conf...
  • guochunyang
  • guochunyang
  • 2009-04-02 22:25
  • 278

SQL Server2008新实例远程数据库链接问题(sp_addlinkedserver)

先说说问题起因: 测试同学在自己电脑上测试不同的后台,但数据库使用的是相同的名称。 于是创建了新的SQL Server实例,而新实例需要指定不同端口才能启动,改端口后执行sp_addlinkedserver语句后,连接测试不成功。 执行的SQL语句如下: EXEC master.dbo....
  • yyjd8088
  • yyjd8088
  • 2017-05-17 18:26
  • 887

java 数据库连接工具类

数据库连接类: DBUtilpackage com.elink.services; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.s...
  • li34442779
  • li34442779
  • 2013-02-06 09:36
  • 1608

SQL SERVER实现远程数据库链接

--查看当前链接情况: select * from sys.servers; --使用 sp_helpserver 来显示可用的服务器 Exec sp_helpserver --删除已经存在的某个链接 Exec sp_droplinkedsrvlogin 服务器别名,N...
  • u010475109
  • u010475109
  • 2016-12-29 18:18
  • 79
    个人资料
    • 访问:1357次
    • 积分:65
    • 等级:
    • 排名:千里之外
    • 原创:4篇
    • 转载:2篇
    • 译文:0篇
    • 评论:0条
    文章存档