Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何登录到';xe';Oracle 11g中的java代码连接?_Java_Jdbc_Oracle11g - Fatal编程技术网

如何登录到';xe';Oracle 11g中的java代码连接?

如何登录到';xe';Oracle 11g中的java代码连接?,java,jdbc,oracle11g,Java,Jdbc,Oracle11g,我想编写只执行以下操作的java代码: 登录到Oracle 11g数据库中的“xe”连接。这就是全部。 你怎么能做到 编辑: 是的,我正在使用JDBC,但无法登录到该连接。对于xe或sys连接,我的url是jdbc:oracle:thin:@//localhost:1521/xe,username=sys和password=123456。那为什么我不能登录到那个连接 编辑: 非常抱歉,我忘了补充一点,除了第一个错误外,我还看到了另一个错误,即 SQLException: ORA-28009: c

我想编写只执行以下操作的java代码:

登录到Oracle 11g数据库中的“xe”连接。这就是全部。 你怎么能做到

编辑: 是的,我正在使用JDBC,但无法登录到该连接。对于xe或sys连接,我的url是
jdbc:oracle:thin:@//localhost:1521/xe
username=sys
password=123456
。那为什么我不能登录到那个连接

编辑:

非常抱歉,我忘了补充一点,除了第一个错误外,我还看到了另一个错误,即

SQLException: ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
然后是-

Exception in thread "main" java.lang.NullPointerException

不幸的是,你的回答有点含糊不清

  • 如果您想通过Java登录数据库,请使用JDBC
  • 如果您希望自动登录外部程序,那么您使用的语言是错误的:)
  • 如果要验证数据库是否已启动,请参阅第一点

总的来说,看看JDBC。Oracle的JDBC文档可以是。

如果您想作为SYS连接,必须使用SYS as sysdba

因此,在java代码中,请尝试以下代码

    String url = "jdbc:oracle:thin:@//localhost:1521:xe";
    String username = "sys as sysdba";
    String password = "123456";
Connection connection= DriverManager.getConnection(url, username, password);

关于

您应该编写以下代码:

private String driver="oracle.jdbc.driver.OracleDriver";
private String dbURL="jdbc:oracle:thin:@localhost:1521:XE";
private String dbUserName="sys as sysdba";
private String dbPassword="123456";


try{
Class.forName(driver);
con=DriverManager.getConnection(dbURL,dbUserName,dbPassword);
-----//Rest of your Code//-------
}catch(Exception e){
e.printStackTrace();
}

您是否熟悉jdbc,如果不熟悉,我建议您阅读它的文档。请参阅问题中添加的编辑。你能告诉我如何从代码登录吗?总是得到这个错误-ORA-01017:无效的用户名/密码;登录denied@sweetdreams当您尝试从sqlplus、任何其他客户端工具或java代码登录时,是否会出现此错误?如果它来自java代码,请包含来自异常部分的完整错误堆栈跟踪。是否有人可以将问题的票数提高到至少0票?对于-1-是,请参考相关编辑。2-为什么是错的?3-否。要创建数据库/schema/user/other user或oracle决定给它的不常见名称:(有效!我想既然连接'xe'的用户名是sys,密码是123456,只在java代码中设置username=sys就可以了。顺便问一下,为什么“sys as sysdba”有效,而不仅仅是“sys”?因为sys是一个特权用户,因此我们需要使用sysdba
sys
。从doc
以特权用户身份通过非安全连接连接到Oracle数据库,您必须通过密码文件进行身份验证。使用密码文件身份验证时,数据库使用密码文件跟踪数据库用户名您已被授予SYSDBA或SYSOPER系统权限。这种身份验证形式在“使用密码文件身份验证”中进行了讨论。
不应该在那里;在String Password=“123456”之后?@NenadBulatovic无疑是的,这是一个拼写错误并已更正。谢谢