⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mhsql.java

📁 httptunnel.jar httptunnel java 源码
💻 JAVA
字号:
package net.jumperz.app.MHSql;

import java.io.*;
import java.sql.*;
import net.jumperz.sql.*;

public class MHSql
{
private static final String DEFAULT_DBMS_USER			= "sa";
private static final String DEFAULT_DBMS_PASS			= "";
private static final int BUFSIZE				= 1024;
private static final int OFFSET					= 50;

private String dbmsPass	= DEFAULT_DBMS_PASS;
private String dbmsUser	= DEFAULT_DBMS_USER;
private String dbmsUrl;
private Connection connection;
private ResultSet rs;
private BufferedReader reader;
//--------------------------------------------------------------------------------
public static void main( String[] args )
throws Exception
{
if( args.length == 0 )
	{
	System.out.println( "Usage: java MHSql dbmsUrl [ -u username ] [ -p password ]" );
	return;
	}
MHSql instance = new MHSql();
instance.start( args );
}
//--------------------------------------------------------------------------------
public void start( String[] args )
throws Exception
{
for( int i = 0; i < args.length; ++i )
	{
	if( args[ i ].equals( "-u" ) )
		{
		dbmsUser = args[ i + 1 ];
		++i;
		}
	else if( args[ i ].equals( "-p" ) )
		{
		dbmsPass = args[ i + 1 ];
		++i;
		}
	else
		{
		dbmsUrl = args[ i ];
		}
	}

System.out.println( "Initializing Database..." );

Class.forName( MSqlUtil.getJdbcDriverClassName( dbmsUrl ) );
connection = DriverManager.getConnection( dbmsUrl, dbmsUser, dbmsPass );

System.out.println( "OK." );

reader = new BufferedReader( new InputStreamReader( System.in ) );
StringBuffer sqlBuf = new StringBuffer();
while( true )
	{
	String line = reader.readLine();
	if( line == null )
		{
		break;
		}
	if( line.equals( "quit" ) )
		{
		break;
		}
	if( line.equals( "" ) )
		{
		continue;
		}
	
	sqlBuf.append( line );
	if( line.indexOf( ";" ) > -1 )
		{
		try
			{
			executeSql( sqlBuf.toString() );
			}
		catch( SQLException e )
			{
			System.out.println( e );
			}
		sqlBuf = new StringBuffer();
		}
	}
	
connection.close();
}
//--------------------------------------------------------------------------------
private void executeSql( String sql )
throws SQLException, IOException
{
long start = System.currentTimeMillis();
rs = MSqlUtil.executeQuery( connection, sql );
long t = System.currentTimeMillis() - start;
System.out.println( "time: " + t );
int j = 0;
while( rs.next() )
	{
	ResultSetMetaData md = rs.getMetaData();
	int count = md.getColumnCount();
	StringBuffer strBuf = new StringBuffer( BUFSIZE );
	for( int i = 0; i < count; ++i )
		{
		if( i != 0 )
			{
			strBuf.append( "\t" );
			}
		strBuf.append( rs.getString( i + 1 ) );
		}
	System.out.println( strBuf.toString() );
	++j;
	if( j == OFFSET )
		{
		String line = reader.readLine();
		if( line.equals( "break" ) || line.equals( "b" ) )
			{
			break;
			}
		j = 0;
		}
	}
}
//--------------------------------------------------------------------------------
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -