問題タブ [jtds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2285 参照

jtds - 間違ったドライバーがロードされました

jdbc の jtds1.2.jar 実装を使用し、ストアド プロシージャを実行して、sqlServer 2008 に接続しようとしています。 私はそれを成功させるテストアプリケーションを書きました

私は自分のenv(アプリケーションサーバー環境ではない)でそれを行うのに問題があります。Java 1.4 を使用しています。jtds を最初に表示するようにクラスパスを設定しました。メソッド DriverManager.getConnection... を呼び出すと、ソース コードは jtds ソース コードではありません。これが私のコードです(例と同じコードです):

デバッグ中: myEnum には 2 つのドライバーがあります:

  1. sun.jdbc.odbc.jdbcodbcdriver

  2. jtds ドライバー

DriverManger が最初のものをロードしたことを恐れています。

jtds ドライバーを確実にロードするにはどうすればよいですか?

どうもありがとう

0 投票する
2 に答える
13646 参照

hibernate - Hibernate を使用した SQLExpress データベースの接続 URL

ドライバーを使用jtdsして、休止状態を使用してローカルで SQL Server に接続しています

サーバー名を使用してサーバーに接続できます: COMP6\SQLEXPRESS

以下は、hibernate.cfg の接続プロパティです。

スタックトレース全体

0 投票する
3 に答える
23578 参照

sql-server - JTDS ドライバーが Sql Server 2008R2 で機能せず、デナリ ネイティブ SSPI ライブラリがロードされていません。java.library.path システム プロパティを確認してください

JTDS ドライバーを使用してアプリケーションから Windows 認証を使用して SQL Server データベースに接続しようとしていますが、次のエラーが発生しました

SSO に失敗しました: ネイティブ SSPI ライブラリがロードされていません。java.library.path システム プロパティを確認してください。

以下は、私が解決しようとしたが、まだ何かが欠けているシナリオです..

  1. システム ディレクトリに ntlmauth.dll を追加しましたが、Sql サーバー 2005 で正常に動作します。
  2. しかし、Sql Server 2008 R2 と Denali で同じことを試しましたが、上記と同じエラーが表示されます
  3. また、システム ディレクトリの x64\SSO\ パスから ntlmauth.dll をコピーしたことを意味します。

これが Sql Server 2008 R2 と Denali で機能しない理由がわかりません。

0 投票する
2 に答える
9382 参照

java - 異なる jdbc ドライバーを使用して複数のデータベースに接続する

Oracle 10G データベースに接続し、そこからデータを読み取り、SQL Server データベースに接続してデータをテーブルに書き込むデーモン ベースの Java プロセス (Web ベースではない) を作成する必要があります。

簡単に聞こえますが、これについていくつか質問があります。

  • 2 つの jdbc ドライバーが必要です。つまり、1 つは Oracle データベースに接続するため、もう 1 つは SQL Server データベースに接続するためです。SQL Server jdbc ドライバーは jtds jdbc ドライバー ( http://jtds.sourceforge.net/ ) であり、Oracle i では標準の oracle jdbc ドライバーを使用します。クラスパスで両方のドライバーを一緒に使用すると、問題が発生する可能性がありますか?

  • 私の推測では、必要なのは、接続を管理するための ConnectionManager クラスと、Oracle からの読み取りか SQL Server への書き込みかに応じて、必要な接続を取得するために関連するメソッドを呼び出すクライアント DAO クラスだけです。これは合理的なアプローチですか、それともより良い設計/パターンがありますか?

編集

わかりました、簡単な設計ソリューションをまとめようとしました。下の画像を参照してください

私が抱えていると思う問題は、コミットする方法です。加工の流れはこちら

  • InvoiceBD はファクトリ クラスから Oracle 接続を取得し、Oracle 接続オブジェクトを渡して InvoiceUploadDAO.readData を呼び出します。
  • InvoiceBD はファクトリ クラスから SQL Server 接続を取得し、InvoiceUploadDAO.writeData を呼び出して SQL Server 接続オブジェクトを渡します。
  • InvoiceBD は、Oracle 接続を再利用して InvoiceUploadDAO.update ステータスを呼び出し、Or​​acle データベースのステータスを「完了」に設定します。

InvoiceBD は Oracle 接続をコミットします。InvoiceBD は SQL Server 接続をコミットします。

または、何か問題が発生した場合、両方の接続オブジェクトがロールバックされます。

それは正しいと思いますか?

ありがとう

0 投票する
3 に答える
18328 参照

java - SQLサーバー「ロック要求のタイムアウト期間を超えました」..再度

SQLServerSPでロックタイムアウトを延長しようとして問題が発生しました。何を試しても「ロックリクエストのタイムアウト期間を超えました」とスローされ続けます。私はjava+jtds 1.2.2、c3p0 0.9.1、およびsqlserver2008を使用しています。試した設定は次のとおりです。

SET LOCK_TIMEOUT 10000 inside the SP and with con.createStatement().execute("SET LOCK_TIMEOUT 10000 ")SPを呼び出す前に。およびSPステートメント内:statement.setQueryTimeout(10);

SPは:sによって呼び出され、tatement = con.prepareCall("dbo.store_procedure ?,?,?", ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_READ_ONLY); 内部に「SET TRANSACTION ISOLATIONLEVELREPEATABLEREAD」を設定します。

何か疑惑はありますか?同様の問題を抱えている人はいますか?前もって感謝します

0 投票する
2 に答える
2610 参照

sql - 絶対パスを使用したJTDS(Access MDBファイルへのJDBC接続)

私はこれに対する解決策を探すのに多くの時間を費やし、Googleを試し、BINGを試し、JTDSコミュニティを試しましたが、解決策がないか、十分に検索していませんが、それでもこれが私の状況です。

プロジェクトにJTDSライブラリがあり、ローカルフォルダー(C:\ path \ to \ databasefile.mdb)にあるローカルMDBデータベースファイルに接続したいのですが、次の接続文字列が必要なだけです。

私はこのようなものを使いたい:

出来ますか?

0 投票する
1 に答える
727 参照

java - パフォーマンスを向上させるために、JTDS で「キープアライブ」を有効にする必要がありますか?

JTDS で「キープアライブ」の構成を有効にすると、パフォーマンスはどのくらい向上しますか? 今日、 jtds のドキュメントを確認したところ、これまで気付かなかった興味深い構成「sockekeepalive」が 1 つ見つかりました。そして、ローカルでパフォーマンス効果をテストしましたか? のデフォルト値は「false」であるため、実際の本番環境で「キープアライブ」を使用するとオーバーヘッドが発生する可能性があります。

よろしくお願いします!

ヴァンス

0 投票する
1 に答える
460 参照

java - すでに開いているJTDS接続で「appName」を変更できますか?

Webアプリケーションのトランザクション情報を基盤となるデータベースプロセスに渡す方法を探しています。私のJavaコードには、1つまたは複数のSQLを実行するトランザクションメソッドReservationService#search()がある場合があります。DBMSには、いくつかのロックとともにSPIDが表示されます。データベースプロセスにタグ「ReservationService#search」を追加する方法を探しています。

jTDS / Sybase ASEには、接続プロパティとして渡すことができるappNameがあります。接続プールを使用しているため、既存の接続が再利用されますが、私の知る限り、appNameは新しい接続の確立時にのみ読み取られます。

(閉じる/開くことなく)既存の接続でappNameを再設定するにはどうすればよいですか?または、それが単に不可能な場合、JavaからDBMSにトランザクションコンテキスト情報を取得するための他のアイデアはありますか?

  • Tomcat Webアプリケーション(Java 6)
  • C3P0接続プール(JDBC 3のみをサポート)
  • SybaseASE15に接続するjTDS

ありがとうサイモン

0 投票する
4 に答える
10710 参照

jdbc - sqljdbc.jar での Windows 認証の使用

マイクロソフトが提供する JDBC ドライバーを使用しながら、SQL SERVER データベースに Windows 認証モードを使用することは可能ですか?

私はsqljdbc.jarを使用しています.. SQLJdbcVersionクラスファイルにはこれが含まれています:

コメントはありますか?

sqljdbc が Windows 認証を使用できない理由はありますか?

私は Websphere アプリケーション サーバー 7 を使用し、j2ee アプリケーションを実行しています。データソースは、WAS 自体で作成されます。

ありがとう

0 投票する
0 に答える
54598 参照

java - SQL Server 2008 の JDBC ドライバーの一覧 (比較)

私は、特に Windows 認証を使用する SQL Server 2008 で使用するために、JDBC ドライバー全体を評価している最中です。私が見つけたもののリストを集めて、以下にリストしました。

私の質問は、SQL Server 2008 と互換性のある他の JDBC ドライバーで、確認する必要があるものはありますか?

  1. Microsoft JDBC ドライバー

    URL : http://msdn.microsoft.com/en-us/sqlserver/aa937724

    長所: SQL Server 2008 用の公式 Microsoft JDBC ドライバー! Microsoft が数年前に購入した JNetDirect JSQLConnect ドライバー v3 に基づいており、それ以来、その上に構築されています。これは、JNetDirect JSQLConnect のサポートから聞いたものです。

    短所:接続性/安定性の問題がたくさんあるようです。私を信じないでください。それについてはGoogleだけです:)。私が探しているステートメントの準備/プーリングを無効にする方法がありません。

    JDBC 準拠: 多くのメソッドが UnimplementedException をスローしますが、JDBC 4.0 準拠であると主張しています!!!!

    JDBC タイプ: 4

    価格: 無料

  2. プログレス データダイレクト

    URL : http://www.datadirect.com/index.html

    長所: トップクラスであると主張し、Informatica などの多数のアプリケーションで使用されており、会社は何年も前から存在しています。迅速なサポートが必要です - 私はそれらについて簡単に説明しました。

    短所:?

    JDBC 準拠: JDBC 4.0 準拠であることを主張

    JDBC タイプ: 5

    価格: 無料ではありません

  3. JTDS

    URL : http://jtds.sourceforge.net/

    長所: 公式の Microsoft JDBC ドライバーよりもはるかに高速です。準備済みステートメントを無効にする方法があります。

    短所:?

    JDBC 準拠: JDBC 3.0 準拠のみ。.validate() や .isClosed() などの重要なメソッドは JDBC 4.0 メソッドであるためサポートされていないため、これは私にとって大きな問題です。

    JDBC タイプ: 4

    価格: 無料 - オープンソース

  4. INET マーリア

    URL : http://www.inetsoftware.de/products/jdbc-driver/ms-sql/merlia

    長所: 公式の Microsoft JDBC ドライバーよりもはるかに高速です。準備済みステートメントを無効にする方法があります。

    短所:?

    JDBC 準拠: JDBC 3.0/4.0 準拠であることを主張

    JDBC タイプ: 4

    価格: 無料ではありません

  5. JNetDirect JSQLConnect

    URL : http://www.jnetdirect.com/products/jsqlconnect.html

    長所: 公式の Microsoft JDBC ドライバーよりもはるかに高速です。準備済みステートメントを無効にする方法があります

    短所:?

    JDBC 準拠: JDBC 3.0/4.0 準拠であることを主張

    JDBC タイプ: 4

    価格: データベース接続が 1 つだけのシングル ユーザーは無料です。

コメントをきれいに保つことができれば、この投稿を他の人と一緒に喜んで更新します.