用同一个sql语句查询。
100个数据库里面的表的结构都是相同的。
我现在要做的就是::需要同时链接100个数据库进行查询。查出一条符合 条件的就显示一条。。
Class.forName("com.mysql.jdbc.Driver");
conn=DriverManager.getConnection("jdbc:mysql://192.168.20.236:3306/express001","root" ,"123456");
ps=conn.prepareStatement("select * from sf where f29=? or f30=? or f40=? or f41=?");
这是连接1个数据库的时候。。。
有什么好办法可以解决嘛
多线程能解决吗??我没有接触过多线程,,如果可以,还请麻烦给点提示 谢谢。。。
まだテストしていないので、試してみてください
リーリーマルチスレッドで解決できると思います...そうしないと同期的に実行されてしまいます。
これを行うための良い方法はありますか? スレッドの数は CPU コアの数でなければなりません。多すぎるとリソースが無駄になります。スレッド プールを使用します。
100 個のライブラリを操作したいので、当然 100 個の異なる接続が必要になります。これは難しい条件です。
投稿者に Dangdang.com のオープンソース プロジェクトを提供します。
シャーディング-jdbc
Oracle の場合は、dblink を使用できます。オリジナルの投稿者でない場合は、mysql を使用して、個別にクエリを実行して最終的に集計できるのは 100 個のデータベースのみです。複数のスレッドを使用してこれら 100 のデータベースを個別にクエリする場合は、集計中のスレッドの安全性の問題に注意する必要があります