我正在尝试使用JDBC连接到oracle数据库。
以下是代码::
public class OraclePwdTest {
static{
try {
Class.forName("oracle.jdbc.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
String ip ="192.168.20.145";
String sid = "oradg";
int port = 1521;
String user = "sys";
String pwd = "s@novi123";
Connection conn = null;
String url = "jdbc:oracle:thin:"+"(DESCRIPTION =" +
"(ADDRESS_LIST =" +
"(ADDRESS = (PROTOCOL = TCP)(HOST = "+ ip +")" +
"(PORT = " + port + "))" +
")" +
"(CONNECT_DATA = (SRVR=DEDICATED) " +
"(SID = " + sid +
"))" +
")";
java.util.Properties prop = new java.util.Properties ();
prop.put ("user", user);
prop.put ("password", pwd);
prop.put ("internal_logon", "sysdba");
try {
conn = DriverManager.getConnection(url,prop);
System.out.println("Connected");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
如果密码具有#@等特殊字符,则以上代码将不起作用。它使用普通密码。
我收到以下错误消息:
java.sql.SQLException:ORA-01017:无效的用户名/密码;登录被拒绝
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:440)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:389)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:382)
at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:573)
at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:445)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:191)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366)
at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:366)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:536)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:228)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:154)
at TestOracleConnection.main(TestOracleConnection.java:54)
请帮助我解决问题。
当特殊字符出现在用户名,密码或类似的连接字符串@
,/
等等,我们有内双引号括起来,例如,如果密码是它包含p@ssword
我们在sqlplus连接为username/"p@ssword"@database
您可以在Java中尝试相同的方法,方法是使用转义符将密码括在双引号中,然后尝试更改
String pwd = "s@novi123";
至
String pwd = "\"s@novi123\"";
我不是Java专家,只是猜测scape字符应该是\
;-)
我正在尝试使用JDBC连接到oracle数据库。 以下是de:: } 如果密码有#@这样的特殊字符。。。那么上面的代码就不起作用了。它使用普通密码。 我收到以下错误消息:: java.sql.SQLException: ORA-01017:无效的用户名/密码;拒绝登录 请帮我解决这个问题。
本文向大家介绍Oracle用户密码含特殊字符时登陆失败问题,包括了Oracle用户密码含特殊字符时登陆失败问题的使用技巧和注意事项,需要的朋友参考一下 当Oracle数据库用户的密码含特殊字符如 @ 时,直接使用正常的密码输入,由于oracle将@后的字符解析为网络服务名而导致登陆失败 如下演示 用户名为:wang密码为:oracle@1网络服务名为:sun 的情况: Linux平台:'wang/
我无法使用R Studio连接到Oracle数据库。 下面是我为设置连接而执行的代码。 以上代码已成功执行。 我在下面的代码中得到一个错误。 错误. jcall(drv@jdrv,"Ljava/sql/Connection;","Connec",as.character(url)[1],:java.sql.SQLExctive:指定无效的Oracle URL 我的R版本是3.4.0
我正在使用飞碟将xhtml转换为pdf。如果xhtml文件包含特殊字符,pdf生成失败。特殊字符是指ASCII字符集之外的字符。下面写的是生成pdf失败的示例xhtml(input.xhtml-ANSI编码)。以下是我用来将xhtml转换为pdf的代码。 应该做些什么来确保pdf生成在任何情况下都不会失败? 下面是另一个xhtml(input2.xhtml-UTF-8编码)。它成功转换为pdf。但
我正在尝试一个程序来检查与oracle数据库的连接,如下所示 但在eclipse中运行之后,它显示了以下异常。 JAVAsql。SQLException:Listener拒绝了连接,出现以下错误:ORA-12505,TNS:Listener当前不知道连接描述符中给出的SID 请帮助我,我是oracle数据库的新手。
我需要允许字段使用字母数字和某些其他字符。我正在使用这个正则表达式: 允许的特殊字符是 “_”。我做错了什么?