我如何获得昨天在我的计算机上下载的oracle 11db的sql * plus连接?

问题描述

| 好吧,这真是令人生气。 。 。我可以连接到另一个城市的服务器上的oracle数据库,但是不能连接到我自己的计算机上的oracle数据库吗?我想念什么?下面是我的代码。 。 。我什至尝试使用两个端口1521(我的Tomcat服务器使用8080)。
try
{
      Connection conn;

      // Load the JDBC driver
      String driverName = \"oracle.jdbc.driver.OracleDriver\";
      Class.forName(driverName);

      // Create a connection to the database            
      String url = \"jdbc:oracle:thin:@localhost\"; 

      conn = DriverManager.getConnection(url,\"root\",\"password\");     

 }   
 catch (IOException e) 
 {
    System.out.println(\"Caught I/O Exception);
    e.printstacktrace();
    throw e;
 } 
 catch (sqlException e) 
 {
    System.out.println(\"Caught sql Exception);
    e.printstacktrace();
    throw e;
 }
}     

解决方法

您输入的网址不正确。尝试这个:
String url = \"jdbc:oracle:thin:@host:1521:database\";
您必须使用正确的用户名和密码,并替换适用于您的案例的主机和数据库的值。不要只逐字使用该字符串。 Oracle在运行吗?您可以使用SQL * Plus进行连接吗?如果SQL * Plus无法连接,则Java也将无法连接。 与JDK和数据库版本匹配的JDBC驱动程序JAR必须位于CLASSPATH中。您应该可以在下载的发行版中找到驱动程序JAR。 不要使用任何CLASSPATH环境变量进行设置;使用
java -cp
命令行参数。 修改此代码以进行尝试。我知道这行得通。
package persistence;

import java.sql.*;
import java.util.*;

/**
 * util.DatabaseUtils
 * User: Michael
 * Date: Aug 17,2010
 * Time: 7:58:02 PM
 */
public class DatabaseUtils
{
    private static final String DEFAULT_DRIVER = \"oracle.jdbc.driver.OracleDriver\";
    private static final String DEFAULT_URL = \"jdbc:oracle:thin:@host:1521:database\";
    private static final String DEFAULT_USERNAME = \"username\";
    private static final String DEFAULT_PASSWORD = \"password\";
/*
    private static final String DEFAULT_DRIVER = \"org.postgresql.Driver\";
    private static final String DEFAULT_URL = \"jdbc:postgresql://localhost:5432/party\";
    private static final String DEFAULT_USERNAME = \"pgsuper\";
    private static final String DEFAULT_PASSWORD = \"pgsuper\";
*/
/*
    private static final String DEFAULT_DRIVER = \"com.mysql.jdbc.Driver\";
    private static final String DEFAULT_URL = \"jdbc:mysql://localhost:3306/party\";
    private static final String DEFAULT_USERNAME = \"party\";
    private static final String DEFAULT_PASSWORD = \"party\";
*/

    public static void main(String[] args)
    {
        long begTime = System.currentTimeMillis();

        String driver = ((args.length > 0) ? args[0] : DEFAULT_DRIVER);
        String url = ((args.length > 1) ? args[1] : DEFAULT_URL);
        String username = ((args.length > 2) ? args[2] : DEFAULT_USERNAME);
        String password = ((args.length > 3) ? args[3] : DEFAULT_PASSWORD);

        Connection connection = null;

        try
        {
            connection = createConnection(driver,url,username,password);
            DatabaseMetaData meta = connection.getMetaData();
            System.out.println(meta.getDatabaseProductName());
            System.out.println(meta.getDatabaseProductVersion());

            String sqlQuery = \"SELECT PERSON_ID,FIRST_NAME,LAST_NAME FROM PERSON ORDER BY LAST_NAME\";
            System.out.println(\"before insert: \" + query(connection,sqlQuery,Collections.EMPTY_LIST));

            connection.setAutoCommit(false);
            String sqlUpdate = \"INSERT INTO PERSON(FIRST_NAME,LAST_NAME) VALUES(?,?)\";
            List parameters = Arrays.asList( \"Foo\",\"Bar\" );
            int numRowsUpdated = update(connection,sqlUpdate,parameters);
            connection.commit();

            System.out.println(\"# rows inserted: \" + numRowsUpdated);
            System.out.println(\"after insert: \" + query(connection,Collections.EMPTY_LIST));
        }
        catch (Exception e)
        {
            rollback(connection);
            e.printStackTrace();
        }
        finally
        {
            close(connection);
            long endTime = System.currentTimeMillis();
            System.out.println(\"wall time: \" + (endTime - begTime) + \" ms\");
        }
    }

    public static Connection createConnection(String driver,String url,String username,String password) throws ClassNotFoundException,SQLException
    {
        Class.forName(driver);

        if ((username == null) || (password == null) || (username.trim().length() == 0) || (password.trim().length() == 0))
        {
            return DriverManager.getConnection(url);
        }
        else
        {
            return DriverManager.getConnection(url,password);
        }
    }

    public static void close(Connection connection)
    {
        try
        {
            if (connection != null)
            {
                connection.close();
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace();
        }
    }


    public static void close(Statement st)
    {
        try
        {
            if (st != null)
            {
                st.close();
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace();
        }
    }

    public static void close(ResultSet rs)
    {
        try
        {
            if (rs != null)
            {
                rs.close();
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace();
        }
    }

    public static void rollback(Connection connection)
    {
        try
        {
            if (connection != null)
            {
                connection.rollback();
            }
        }
        catch (SQLException e)
        {
            e.printStackTrace();
        }
    }

    public static List<Map<String,Object>> map(ResultSet rs) throws SQLException
    {
        List<Map<String,Object>> results = new ArrayList<Map<String,Object>>();

        try
        {
            if (rs != null)
            {
                ResultSetMetaData meta = rs.getMetaData();
                int numColumns = meta.getColumnCount();
                while (rs.next())
                {
                    Map<String,Object> row = new HashMap<String,Object>();
                    for (int i = 1; i <= numColumns; ++i)
                    {
                        String name = meta.getColumnName(i);
                        Object value = rs.getObject(i);
                        row.put(name,value);
                    }
                    results.add(row);
                }
            }
        }
        finally
        {
            close(rs);
        }

        return results;
    }

    public static List<Map<String,Object>> query(Connection connection,String sql,List<Object> parameters) throws SQLException
    {
        List<Map<String,Object>> results = null;

        PreparedStatement ps = null;
        ResultSet rs = null;

        try
        {
            ps = connection.prepareStatement(sql);

            int i = 0;
            for (Object parameter : parameters)
            {
                ps.setObject(++i,parameter);
            }

            rs = ps.executeQuery();
            results = map(rs);
        }
        finally
        {
            close(rs);
            close(ps);
        }

        return results;
    }

    public static int update(Connection connection,List<Object> parameters) throws SQLException
    {
        int numRowsUpdated = 0;

        PreparedStatement ps = null;

        try
        {
            ps = connection.prepareStatement(sql);

            int i = 0;
            for (Object parameter : parameters)
            {
                ps.setObject(++i,parameter);
            }

            numRowsUpdated = ps.executeUpdate();
        }
        finally
        {
            close(ps);
        }

        return numRowsUpdated;
    }
}