jdbc的问题??

funpig 2002-05-13 09:41:07
怎么样用JDBC连接到数据库而不指定特定的数据库??比如:
不用URL:"jdbc:mysql://"+hostname+":"+port+datebasename;
而用类似的URL:"jdbc:mysql://"+hostname+":"+port;
...全文
85 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yehuo 2002-05-14
  • 打赏
  • 举报
回复
我觉得可以写一个配置文件config,把连接参数写入,这样可以输入你想连接的数据库。
private java.util.ResourceBundle rb = null;
pivate String sUrl=null;
private String sUser=null;
private String sPassword=null;
private String protcol=null;
try{
rb = java.util.ResourceBundle.getBundle("config");
sUrl=rb.getString(protocol)+rb.getString("sServerName")+":"+rb.getString("sPort")+":"+rb.getString("sDatabaseName");


sUser=rb.getString("sUser");
sPassword=rb.getString("sPassword");
}
catch (Exception ex)
{
//throw ex;
ex.printStackTrace(System.out);
}
funpig 2002-05-14
  • 打赏
  • 举报
回复
那不是想写一个DB的管理软件都很难?!是不是JDBC的问题?不支持??
shihb 2002-05-14
  • 打赏
  • 举报
回复
我同意楼上的观点,不行,只有到你决定想连接哪个数据库时才拼好url来连接DB。
Dickensi 2002-05-14
  • 打赏
  • 举报
回复
什么叫做连接到数据库!
老大!没数据库你怎么连?

如果你想通过程序动态指定连接数据库的话!把他放到配置文件config,
如果想再舒服一点的话建立不同数据库的连接池!
dopi 2002-05-14
  • 打赏
  • 举报
回复
SQL-SERVER JDBC 驱动:
String sDBDriver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

String sConnStr = "jdbc:microsoft:sqlserver://"
+dataserver+":1433;user="+username+";password=" +userpassword;
......

然后访问用 USE 语句,如:
String sql = "USE DATABASEN " +
"INSERT INTO TABLEN ("+
.......
我倒是不会写URL直接连到具体数据库的,请指教!!!
waterdragonfly 2002-05-13
  • 打赏
  • 举报
回复
不能像Database pilot那样自己输入配置吗?
照你写那样“连接到数据库后在指定提定的数据库”好像不太可能!
至少我没见到过这样的用法。
saintKnight 2002-05-13
  • 打赏
  • 举报
回复
那只好是在创建连接时用可选参数,即自己定义一个连接方法,当需要连接数据库时,调用此方法将URL传进去。
funpig 2002-05-13
  • 打赏
  • 举报
回复
楼上的兄弟,你的"jdbc:odbc:student"中的student还是指定的数据库呀!?
newman0708 2002-05-13
  • 打赏
  • 举报
回复
public static void main(String[] args){
new StuManager("sun.jdbc.odbc.JdbcOdbcDriver","jdbc:odbc:student","","");
}
public StuManager(String driver, String url,String user , String password) {
try{
Class.forName(driver); // Load the driver
connection = DriverManager.getConnection(url, user, password);
statement = connection.createStatement()
}
catch(ClassNotFoundException cnfe) {
System.err.println(cnfe); // Driver not found
}
catch(SQLException sqle){
System.err.println(sqle); // error connection to database
}
}

funpig 2002-05-13
  • 打赏
  • 举报
回复
我的意思是象管理软件一样,连接到数据库后在指定提定的数据库
xiaobi_liang 2002-05-13
  • 打赏
  • 举报
回复
"jdbc:mysql://"+hostname+":"+port+datebasename;
并没有指定特定的数据库呀
datebasename
可以是个变量

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧