我一直在学习如何使用Oracle访问数据库,并发现了这一有趣的区别。
String dbURL1 = "jdbc:oracle:@serverName:port:database";诗句
String dbURL1 = "jdbc:mysql://serverName:port:/database";为什么是刀伤?如果我不为MySQL提供斜杠,编译器将无法确定合适的驱动程序。但是,对于Oracle,如果我确实提供了一个斜杠,编译器也会生成一个错误。
发布于 2015-09-27 21:47:56
URL格式由驱动程序定义。
对于MySQL,您可以检查完整的这里格式。
发布于 2015-09-27 21:50:34
标准没有强制使用JDBC中的连接字符串的格式。每个DB驱动程序都可以根据设计器的首选项自由决定自己的格式。此外,当同一RDBMS存在多个驱动程序时,到同一数据库的连接字符串的格式可能有所不同。
根据MySQL参考手册,MySQL对其连接字符串使用以下格式:
MySQL (MM.MySQL Driver)
jdbc:mysql://<HOST>:<PORT>/<DB>
org.gjt.mm.mysql.Driver另一方面,Oracle瘦客户机使用这种格式:
Oracle Thin
jdbc:oracle:thin:@<HOST>:<PORT>:<SID>
oracle.jdbc.driver.OracleDriver如您所见,斜杠/是MySql所需语法的一部分,但它不是MySql语法的一部分。
https://stackoverflow.com/questions/32813153
复制相似问题