問題タブ [mysql++]

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 に答える
3958 参照

c++ - MySQL++ で mysql_ping タイムアウトを設定する方法

mysql_ping を数秒でタイムアウトさせたい。以下のテストケースでは、接続が確立された後に「ifconfig eth0 down」が続く場合、conn.ping() の false 側には到達しません。スレッド/プロセスは、終わりのない待機のように見えます。これを変更して、できれば MySQL++ オプションを使用して、タイムアウトを速くしたいと考えています。どのオプションが考えられますか?

たぶん、再試行する回数も設定する必要がありますか?

MySQL のドキュメントを読むと、mysql_ping が自動再接続を試みることがわかります。これは問題ありませんが、最終的にはタイムアウトさせたいと思います。

http://dev.mysql.com/doc/refman/5.1/en/mysql-options.html http://dev.mysql.com/doc/refman/5.1/en/mysql-ping.html

自動再接続を行うため、MYSQL_OPT_CONNECT_TIMEOUT が適しているようです。ただし、以下のテストケースでは、mysqlpp::ConnectTimeoutOption(1) を設定しても役に立ちません。

MySQL++ ping() は C API の単なるラッパーのようです。ping() を次のように定義する「/usr/include/mysql++/dbdriver.h」からこれを収集しました。

bool ping() { return !mysql_ping(&mysql_); }

私が使用しているライブラリのバージョンは次のとおりです。

  • libmysql++-dev: 3.0.9-1+b1
  • libmysql++3: 3.0.9-1+b1
  • mysql クライアント 5.1: 5.1.49-3
  • 0 投票する
    1 に答える
    1716 参照

    c++ - MySQL ++クエリオブジェクトを再利用して複数のストアドプロシージャを呼び出すにはどうすればよいですか?

    mysql ++クエリを使用してプロシージャ「CreateTable」を何度も実行したいのですが、最後にクエリをリセットしましたが、最初のクエリだけが機能し、最後のクエリは機能しません。問題は、すべてのクエリを作成する方法です。仕事?

    上記の手順です。

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

    visual-c++ - リンクに関するmysql ++の問題

    問題があります。mysql++ 3.1.0 を使用しています。 > mysqlpp.dll、mydqlpp.lib、mysqlpp_d.dll、mydqlpp_d.lib を含む lib フォルダーへの一般的な追加ライブラリ ディレクトリ ディレクトリ。これらのコード:

    次のエラーが発生します。

    Visual Studio 2008で。これを修正するにはどうすればよいですか?

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

    c - mysqlおよびc-クエリで変数を使用

    mysqlデータベース接続を使用してacプログラムを作成していますが、mysqlクエリの作成に問題があります...

    mysqlクエリで可変整数を使用したいのですが、正しく取得できないようです...

    私の現在のクエリは次のようになります...

    私のmarker_ID値は可変値でなければならないので、コードを減らすことができます...

    私はこのガイドを使って私を動かしました... (http://zetcode.com/tutorials/mysqlcapitutorial)

    助けてくれてありがとう

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

    c++ - mysqlpp 接続メソッドのタイムアウト - どうすれば制御できますか?

    接続メソッドのタイムアウトを制御しようとしていますが、適切な手段が見つかりませんでした。

    明確にするために、私は Idle 接続タイムアウト (ConnectTimeoutOption) について話しているのではありません。

    私が対処する必要があるシナリオは、データベースがなくなったことであり、私のサーバーはそれに対処する必要があります。私の現在の処理は、サーバーに ping を実行していることです。ping が失敗したことに気付いた場合は、クエリを 100 秒間中断しています。その後、接続を再確立しようとしています。問題は、データベースがまだ死んでいる場合、connect メソッドが応答するのに約 20 秒かかることです (ネットワーク ケーブルを引っ張るだけでシミュレートできます)。

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

    c++ - mysql++クエリが失敗する

    私はmysql++の新しいユーザーで、いくつかのポインターを探しています(しゃれを意図しています)。

    問題:更新ステートメントが失敗します。

    接続は開いています。接続を使用する前のステートメントは機能します。

    更新しようとしているレコードは存在すると確信しています。mysqlクエリツールで確認できます。CustomerIdは正しいと確信しています。

    なぜこれが更新に失敗するのですか?

    接続の例外をオフにすると、サイレントに失敗します(result.info()メソッドは何も返しません)。

    文字列に変換しようとしたときに例外をオンにすると、セグメンテーション違反が発生します。

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

    c++ - 単純な mysql++ コードがスタンドアロンでコンパイルされるのに、プロジェクトではコンパイルされないのはなぜですか?

    最初に、小さなプログラム:

    CodeLite またはそのような方法で 1 つのファイルとしてコンパイルすると:

    大丈夫ですが、このファイルでプロジェクト全体をビルドしようとすると、次のようになります。

    CodeLite g++ コンパイラの設定は次のとおりです。

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

    mysql++ - mysqlpp クエリが実行から返されない

    データベースに対して実行しようとしているかなり単純な呼び出しがあります。すべてを try/catch ステートメントと if ステートメントで囲みましたが、何もありません。接続していることはわかっています (MySQL の接続参照カウントは、スクリプトを実行しようとするたびに増加します) が、元に戻らないようです。コードは次のとおりです。

    そして私は得る:

    私の唯一のアウトプットとして。そこにはさらにデバッグがあります(クエリが正しくまとめられている、接続が正しいなど)。何が起こっているのか、次に何を確認する必要があるのか​​ 誰にも分かりますか?

    ありがとう!

    -- 編集: MySQL から直接呼び出しを実行すると、すべてが期待どおりに機能するため、問題は発生しません。

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

    c++ - MySQL++ - 実行時チェックの失敗 #2 - 変数の周りのスタックが壊れていた

    MySQL++ に問題があり、助けが必要です。Visual Studio 2010、MySQL++ v3.1.0、および MySQL v5.1.59 ( x86 & x64 ) を使用しています。すべてのライブラリは正しくコンパイルされています。このエラーは、コンパイラの設定「Both (/RTC1、/RTCsu と同等) (/RTC1)」がオンになっているため、Debug バージョンでのみ発生します。

    編集:これはデバッグ バージョンでのみ発生することに注意してください。リリースでは、問題を mysqlpp_d.dll に遡って追跡した魅力のように機能します。参照カウントが原因で、MySQL++ オブジェクトがデストラクタでクラッシュしています。ref カウンターのメモリにアクセスできないと文句を言い、それを減らそうとするとクラッシュします。少なくともそれが起こると思います。

    私はこれを試して、すべてが逆参照され、正しい順序で削除されることを確認しました(無関係であっても、本当の問題を追跡するのに役立ちました):http://pastebin.com/Ru0uYcy9

    次のようにクラッシュします。

    Launcher.exe の 0x000007feeef5dd4c (mysqlpp_d.dll) での初回例外: 0xC0000005: アクセス違反の書き込み場所 0x000007feeeff5148。Launcher.exe の 0x000007feeef5dd4c (mysqlpp_d.dll) で未処理の例外: 0xC0000005: アクセス違反書き込み場所 0x000007feeeff5148。

    ここで壊れます: http://pastebin.com/9Mfr7NwB

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

    c++ - LinuxでのMySQL++SSLサポート

    SSLをサポートするDebian6でMySQL++を正しく動作させようとしています。私はWindows7ですべてをテストしましたが、うまく機能します。すべてが暗号化されます。しかし、Debianへの移植に少し問題があります。

    これは私のエラーです:

    terminate called after throwing an instance of 'mysqlpp::BadOption' what(): Option not supported by database driver v5.1.49

    これは、証明書ファイルを設定するための私の呼び出しです。

    connection->set_option(new mysqlpp::SslOption("/root/certs/client-key.pem", "/root/certs/client-cert.pem", "/root/certs/ca-cert.pem", "/root/certs", "DHE-RSA-AES256-SHA"));

    MySQL ++を構成するときに、libmysqlclientでmysql_ssl_set()を検索することに気づきました。その機能は見つかりません。

    checking for mysql_ssl_set in -l... no