序文 昨日、小さなプロジェクトを書いていたときに、txt ドキュメントのデータを mysql データベースにインポートするという要件に遭遇しました。最初は、Mysql Workbench を使用して TXT ファイルを直接インポートしたかったのですが、結局、TXT のインポートをサポートしていないことがわかりました。その結果、TXT を Excel に変換し、Linux にインポートすると、さまざまなコード文字化けの問題が見つかりました。 プログラマーにできないことはないという理念のもと、インポート用のファイルを直接操作する Python コードを書きました。結果として、10,000 件を超えるレコードを含むファイルが作成され、インポート時間は約 2 分です。 具体的なコードは次のとおりです。
mysqlpython.py ファイル pymysql からのインポート * クラスMysqlpython: def __init__(self,データベース,ホスト="localhost", ユーザー="root",パスワード="123456", 文字セット="utf8",ポート=3306): self.database = データベース self.host = ホスト self.user = ユーザー self.password = パスワード self.charset = 文字セット self.port = ポート # データ接続とカーソルオブジェクトを作成する def open(self): self.db = connect(host=self.host, ユーザー=自己.ユーザー、 パスワード=自分自身のパスワード、 ポート=自己.ポート、 データベース=self.database、 文字セット = self.charset) self.cur = self.db.cursor() # カーソルオブジェクトとデータベース接続オブジェクトを閉じます def close(self): 自己.cur.close() 自己.db.close() # sqlコマンドを実行します def zhixing(self,sql,L=[]): 自己オープン() 自己.cur.execute(sql,L) を実行します。 自己.db.コミット() 自己.閉じる() # クエリ関数 def all(self,sql,L=[]): 自己オープン() 自己.cur.execute(sql,L) を実行します。 結果 = self.cur.fetchall() 結果を返す __name__ == "__main__" の場合: sqlh = Mysqlpython("辞書") sel = "ユーザーから*を選択" r = sqlh.all(選択) 印刷(r) importtxt.py ファイル 輸入再 インポートシステム mysqlpythonからMysqlpythonをインポート sqlh = Mysqlpython("辞書") def insert(データ): arr = データ分割() 名前 = arr[0] 説明 = " ".join(arr[1:]) ins = "単語(名前、説明) に値(%s、%s) を挿入" sqlh.zhixing(ins,[名前,説明]) get_addr() を定義します: f = 開く('./dict.txt') 行 = f.readlines() 行内の行の場合: 挿入(行) f.close() 戻る '' __name__ == '__main__' の場合: 印刷(get_addr()) dict.py ファイル (複数のファイルをコピーしました) 不確定な芸術 そろばん n. 平行棒に沿ってスライドするビーズが付いた枠。子供に数を教えたり、(一部の国では)数を数えるのに使われる。 放棄する、(人や物や場所から)立ち去る、戻るつもりがない、見捨てる、捨て去る 放棄、n. 放棄 abase v. ~ 自分自身/他人の尊厳を下げる; 自分自身/他人の品位を下げる; 恥ずかしめる、落ち着きや自信を破壊する:当惑させる abashed adj. ~ 恥ずかしい; 恥じた 軽減する、少なくする abattoir n. = 屠殺場(屠殺) 異なる区切り文字に一致するように正規表現を変更するだけです。すべてのコードはここに貼り付けられています。データベース構成をコピーして変更し、実行するだけです。 要約: 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 以下もご興味があるかもしれません:
|
MySQL を使用して中国語の文字を挿入すると、多くの友人から次のエラーが報告されます。 これは、文...
このドキュメントの目的はreact-diagramフレームワーク モデルの Json シリアル化を説...
序文信じてください。この記事の 7️⃣ ステップを覚えておけば、JS の this リファレンスを完...
使用する仮想マシンは、サーバー環境をシミュレートする CentOS 8.4 です。外部ネットワークに...
docker create コマンドは、イメージに基づいてコンテナを作成できます。このコマンドの効果...
では、早速レンダリングを見てみましょう。 コア コードはtransition: cubic-bezi...
目次1. Vueにおけるwatchの役割はその名の通り、監視の役割です。 2. このオブジェクトのプ...
2011 年に最も顕著なウェブサイトの変更は、一連の製品に新しいユーザー インターフェースを導入した...
Linux コマンドの学習は、ほとんどの初心者にとって最大の障害です。今日は、Linux システムで...
1. はじめにWHMCS は、ユーザー管理、請求書の支払い、ヘルプ サービスなど、オンライン ビジネ...
目次導入Tomcatへの接続方法APR と Tomcat ネイティブtomcat で APR を使用...
1. 準備ミドルウェア: Tomcat、Redis、Nginx Jar パッケージ: commons...
HTML でのテキストのデフォルトの配置は水平ですが、特殊な場合にはテキストを垂直に配置する必要が...
この記事の例では、3レベルのナビゲーションメニューを実装するためのjs + cssの具体的なコードを...
MySQL インストール パッケージをダウンロードします。mysql-8.0.11-winx64 を...