問題タブ [pymysql]

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 投票する
7 に答える
79470 参照

python - Pythonを使用してmysqlクエリをcsvに書き込むには、フィールド名を表示する必要があります

私は次のものを持っています:

これにより、文字化けが発生します。印刷レコード [0] などの使用に慣れています。書式設定をどのように設定すればよいかわかりません。コンソールでのクエリのようなものを生成します。mysql サーバーから単純な INTO OUTFILE を実行できません。


アップデート

8 年が経ちました。この質問については、今でも時折最新情報やクエリを受け取ります。

いくつかのコメントで述べたように、DBAPIの cursor.description は私が探していたものです。

pymysqlドライバーを使用してMariaDBに接続するPython 3 の最新の例を次に示します。これは、すべての行を選択してタプルにフェッチし、行ヘッダー/説明をリストにフェッチします。次に、これら 2 つのデータ構造を 1 つのリストにマージして、csv ファイルに書き込みます。

ヘッダー名が結果リストの最初のエントリになります。結果を線形にファイルに書き込むことで、行ヘッダーが CSV ファイルの最初の行になるようにします。

0 投票する
5 に答える
53836 参照

python - PyMySQLとは何ですか?MySQLdbとどのように異なりますか?Djangoのデプロイに影響を与える可能性はありますか?

MySQLdbの代わりにPyMySQLを使用して、Django1.3アプリのいくつかの問題を解決しました。切り替え方法については、次のチュートリアルに従いました:http ://web-eng-help.blogspot.com/2010/09/install-mysql-5-for-python-26-and.html

ここで、PyMySQLが実際に何であるか、およびMySQLdbとどのように異なるかを知りたいと思います。

私はローカルホストでそれを使用していて、それからそれをいくつかのホスティングにアップロードします。

ローカルホストでPyMySQLを使用し、それらが提供するものをホスティングするのは問題ありませんか?base.pyとintrospection.pyの「MySQLdb」を「PyMySQL」に変更したので、これらのファイルを変更した後、サーバーにアップロードする必要がありますか?または、Djangoのファイルであるため、Djangoはすでにそこにアップロードされているので、それほど重要ではありませんか?

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

python - pymysql callproc()は、後続の選択に影響を与えるようです

コードベースをMySQLdbの使用からpymysqlに移行しようとしています。私は次の問題に直面していて、誰かが似たようなものを見たことがないかと思います。

簡単に言うと、pymysqlカーソルcallproc()メソッドを介してストアドプロシージャを呼び出すと、同じまたは異なるカーソルを使用してexecute()メソッドを介して後続の「select」呼び出しが誤った結果を返します。Python2.7.2とPython3.2.2で同じ結果が表示されます

callproc()メソッドはどういうわけかサーバーをロックしていますか?コードを以下に示します。

上記のclose()およびカーソル作成呼び出しのコメントを解除できますが、結果は変わりません。callproc()呼び出しをコメントアウトすると、selectステートメントは問題なく機能します。

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

python - pyMySQL セット接続文字セット

Flask と MySQL を使用して、かなり単純な Web アプリを開発しています。

私はユニコードに苦労しています。ユーザーは、Word からコピーしたものを貼り付けることがありますが、古いスマート クォートが表示されますu'\u201c'

少し調査したところ、MySQL への接続でLatin1文字セットが使用されていることがわかりました (デフォルトのようです)。

接続にユニコードを使用するように指定するにはどうすればよいですか?

私は pyMySQL を使用しています。これは、MySQLdb のドロップイン代替品であるとされています。MySQLdb はオブジェクトのset_character_set(self, charset)関数を定義しconnectionますが、pyMySQL は定義しません (試してみるとエラーが発生します)。

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

mysql - Python3でMySQLデータベースへの入力をエスケープするにはどうすればよいですか?

Python3でMySQLデータベースへの入力をエスケープするにはどうすればよいですか?私はPyMySQLを使用していて正常に動作しますが、次のようなことをしようとすると次のようになります。

'文字列にまたはが含まれている場合は機能しません"。私も試しました:

これに伴う問題は、ライブラリ(PyMySQL)がPython2.xのフォーマット構文を使用している%ことです。これは機能しなくなりました。私もこの可能な解決策を見つけました

ここにありますが、このコードをどこに追加すればよいかわかりません。これが私が得たすべてです:

編集:私はそれを解決しました!PyMySQLでは、正しい方法は次のようになります。

text = conn.escape(request[1])はコードをエスケープするものです。PyMySQLコード内で見つかりました。そこにrequest[1]、入力があります。

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

mysql - mysqlはpymysqlで夢中になる

私はmysql 5.5、python 2.7、pymysql、os x 10.6.8で非常に奇妙なことをしています

私は mysql テーブルの ID、名前、ファジーを持っています。次のようなpythonリストを生成しました

次に、ファジー フィールドを更新します。

コードを実行した後、エラーが発生しました。これは、クエリが正常に実行されたことを意味します。DB に変更はありませんが、最も興味深いのは、Python コードが実行された後、Mysql サーバーがどの種類のクライアントからも更新クエリを実行しなくなったことです。

ロック待機タイムアウトを超えました。トランザクションを再開してみてください

選択クエリを正常に実行することしかできません。実際には、mysqlサーバーを再起動する必要があり、その後でのみ更新クエリが正常に実行されますが、pythonクエリコードを実行するとすぐに再生が再開されます。

ウィンドウマシンのmysqlサーバーでもこれを試しましたが、結果は同じでした。また、MySqlDb を使用して pymysql を変更しようとしましたが、結果も同じでした。

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

python - ソース エンジンの Apache2 と Python

私は Eventscripts 開発者 (www.eventscripts.com) で、Python でコードを書いています。Counter-Strike Source 用です。しかし、それは本当に重要ではありません。

mysqlを使用したローカルxampp apache2サーバーがあります。phpMyAdmin を使用するために、mysql と apache の両方を開始しました。ユーザー管理がMySQLを介して行われる小さな管理スクリプト/プラグインをスクリプト化しています。

全体として、それは問題ではないようだ、と私は思った。「pymysql」と Python 2.7 を使用しています。mysql に正常に接続しました。これが私の単純な mysql-class です。

したがって、このクラスは基本的に機能していますが、書き方は悪いですが、機能しています。注: es.dbgmsg(LEVEL, MESSAGE) - print と同様に、コンソールにメッセージを出力します。

それでは基本情報です!

今、私は私の問題に来ました! 状況: サーバー (python、mysql クラス) に接続していると同時に、データベースにデータを追加しようとしています。しかし、「OK」を押しても何も起こらず、サイトは無限に読み込まれます。しかし、サーバーを閉じると (python と mysql を切断)、すぐに終了し、行が追加されました。

それを修正するにはどうすればよいですか?

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

mysql - mysql 5.5 utf-8 照合 utf8_unicode_ci、pymysql

OS x 上の mysql 5.5 に問題があります。私は多言語プロジェクトに取り組んでおり、MyISAM テーブルを使用しています。デフォルトの文字セットは utf-8 で、デフォルトの照合は utf8_unicode_ci です。

イタリア語とドイツ語は問題ありませんが、スペイン語はそうではありません。私はデータを操作するためにpythonを使用しています。

事実上、特定のスペイン語の文字はすべてめちゃくちゃです。

Pythonシェルから:

私は本当に混乱しています。明らかに同じユニコード文字列のようです!

ありがとう。

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

python - PyMySQL:多数の行が失敗するクエリ

PyMySQLで実行している非常に単純なクエリがあります。

records150万を超える行があります。id主キーです。

これはPyMySQLの制限ですか?一度に非常に多くの行をクエリする場合、他に使用する必要があるものはありますか?

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

python - pymysql で大きなブロブを挿入しようとするとパイプが壊れる

ユーザーがファイルをアップロードできるフラスコベースの Web アプリがあります。ファイルは mysql データベースに保存されます。

これは、ファイルが約 16Mb より大きくなるまで正常に機能します。挿入は次のように失敗します。

ファイルサイズが mySQL の設定と一致しているmax_allowed_packetように見えたときに興奮したので、変更してmy.cnf再起動しましたが、役に立ちませんでした。(show variables like 'max_allowed_packet'は 150M の新しい値を示します)

ファイルは間違いなくサーバーにアップロードされます。挿入メソッドにコードを挿入して、クエリを実行する前にファイルをディスクに書き込み、ファイルは問題ありませんでした。

BLOB が挿入されるフィールドは longblob です。挿入を担当するコードは次のとおりです。

私は今、少し途方に暮れています.1週間ほど前に、ファイルをセクションに挿入する必要があることを示唆するものをいくつか見つけましたが、今は見つけることができません(実際の仕事に気を取られました! )そして、それをチャンクに挿入する方法がわかりません。

これについて何か助けていただければ幸いです。