問題タブ [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.
php - 文字エンコーディングはどこで変更されますか?
「João」のようなアクセント付きのエントリを持つテーブルを持つ MySQL データベースがあります。
エントリは C/C++ コードの MySQL++ クエリで選択されますが、特にこのエントリは "Jo�o" ( printf
、fprintf
またはstd::cout <<
) として出力されます。
私が理解したいのは、データ フローのどこでこの文字が正しくエンコードされていないかということです。
もう少しコンテキスト: フロントエンドは HTML/PHP であり、PDO を使用して MySQL データベースにデータを挿入します。
HTML の PDO クエリで文字が正しく表示されます。また、次のように正しく表示されます。
そのため、表にうまく書かれていると思います。この問題は、MySQL++ クエリまたは C/C++ 出力コマンドのいずれかにあるようです。
関係あるかわかりませんが、MySQL のテーブルエンコーディングはutf8_general_ci
で、シェルロケールはLANG=en_US.UTF-8
.
mysql++ - MySql++ (C++) 特殊な条件下でのセグメンテーション違反
次のコードを確認してください。
"1" が #defined で、Connection オブジェクトがスタックにある場合、コードの両方のチャンクが実行されます (conn.connect と m_pconn->connect)
「0」が #defined で、2 番目の Connection オブジェクトが動的に割り当てられている場合、m_pconn->connect でセグメンテーション違反が発生します。
何か案は?
c++ - GDB でのデバッグで「mysql への接続が失われました」というエラーがスローされる
ランダムにクラッシュするため(数日後、数時間後..)、gdbでプログラムをデバッグしようとしました。しかし、デバッグしようとすると、プログラムは次のエラーをスローします:「MySQL サーバーへの接続が失われました」および「MySQL サーバーが離れました」
gdb なしでプログラムを実行している場合、これらのエラーは発生しませんが、gdb の何が問題なのですか?
my.cnf で max_allowed_packet を 256M に増やそうとしましたが、うまくいきませんでした..
c++ - Borland コンパイラ用の C++ テンプレート コードを書き直す方法
Borland の 32 ビット コンパイラを使用して MySql++ をコンパイルしようとしています。このコンパイラは、一部のテンプレート構文に問題があることがよく知られています。コンパイラも、clang コンパイラに置き換えられているため、ほとんど廃止されています。
ただし、次のコードをコンパイル可能なバージョンに修正できれば、時間を節約できます。
コンパイラ エラーは次の行で発生します。
コンパイラ エラーは次のとおりです。
[bcc32 エラー] mystring.h(726): E2506 'String::conv<Type>(Type) const' の明示的な特殊化があいまいです: テンプレート引数を指定する必要があります
完全なパーサー コンテキスト
transaction.cpp(32): #include lib\query .h
query.h(37): #include lib\result.h
result.h(40): #include lib\row.h
row.h(33): #include lib\mystring.h
mystring.h(46) : 名前空間 mysqlpp
String
はカスタム文字列クラスであり、関数はクラスconv()
内のインライン テンプレート関数です。String
さまざまな変更を試みましたが、成功しませんでした。
c++ - mysql ++でSQLの「in」句を使用する方法
いくつかのデータがあり、mysql db の in 句を使用して一度に結果を取得したいと考えています。たとえば、97、87、73、100 などの数字があります。SQL likeselect * from stock where num in (97,87,73,100)
を使用して結果セットを取得できます。
mysql++
しかし、それを使用してすべての行を取得するにはどうすればよいですか? 私のmysqlpp::StoreQueryResult
プログラムの最初の行のみを返します。
どうもありがとう。
c++ - mysql_ping が SIGSEGV を引き起こす
私は c++ と mysql++ ライブラリを使用しています。各スレッドに個別の mysqlpp::Connection オブジェクトがあります。すべての mysqlpp オプションはデフォルトです (ReconnectOption は無効です)。各スレッドは、MariaDB サーバーへの永続的な接続を維持します。一連の SQL クエリの前に、次のチェックを行います。
このコードは、めったに次の SIGSEGV を生成しません。
無限ループで ping/connect 呼び出しを使用してテスト プログラムを実行することにより、このバグを再現しようとしました。実行中に、MariaDB サーバーを手動で再起動しました。しかし、再現には成功しませんでした。それを修正する方法はありますか?ありがとうございました。
OS: Ubuntu 64 ビット