まず、SQLデータベースの基本的な操作のいくつかを教えて:
1 2 3 4削除書き込ま更新(変更)5選択条件を作成
上記の基本的な操作を使用すると、簡単なデータベースを作成し、保存できます。
pythonを呼び出すコードをリリース:ここでは、次の簡単なデータベース操作ほど良好ではないドスを呼び出すことです
#- * -コーディング:UTF-8 - * - "" "2019 年5月で作成した月ON 6午前9時59分32秒 @author:wenzhe.tian " "" インポートMySQLdbは #オープンデータベースコネクティビティ DB = MySQLdb.connect(" localhostを"、「ルート」、「twz1478963 」、「TESTDB 」、文字セット= 「UTF8 」) #カーソル操作取得するカーソル()メソッドを使用して カーソル= db.cursor() #をデータテーブルが既にテーブルを削除するexecute()メソッドを使用して(存在する場合)。 cursor.execute(") プリント(cursor.fetchone()) cursor.execute(" VERSIONを(SELECT)" ) #创建数据SQL语句表 SQL = ""」表EMPLOYEEを作成します( FIRST_NAME CHAR(20)NOT NULL、 LAST_NAME CHAR(20)、 AGE INT、 SEX CHAR(1)、 所得FLOAT); "" " cursor.execute(SQL) ###%\替换 SQL = " INSERT INTO EMPLOYEE(FIRST_NAME、\ LAST_NAME、年齢、性別、収入)\ VALUES(%sの%sは、%sを、%sに、%sの); "%の\ (" 'マック'"、" 'モハン' "、20、" 'M' "、9000 ) のtry : #SQL文の実行 cursor.executeを(SQL) を印刷(cursor.fetchone()) #実行するためにデータベースに送信 db.commitを() を除く: #ケース任意のROLLBACKエラーであり db.rollback() ###%\代わりに SQL = " INSERT EMPLOYEE INTO(\ FIRST_NAME、 \ LAST_NAME、年齢、性別、収入) VALUES(%S、%S、%S、%S 、%S); "%の\ (" "ジョン"、" 'ウィルは' "、24、" 'M' "、12000 ) のtry : #SQL文の実行 cursor.executeを(SQL) を印刷(cursor.fetchone()) #実行するためにデータベースに送信 db.commitを() を除く: #ロールバックケース内の任意の誤りがある db.rollback() SQL = " SELECT *はEMPLOYEE FROM \ WHERE S%のようなFIRST_NAME "%(" '%のH_' " ); '' ' (A、Bの間にWHERE Aおよび/またはB ) %の値は、複数の文字、_下線付き文字を表します。 M%:できるワイルドカード、正規表現、M.の始まりのための情報を照会するために、ファジィ意思すべき %M%は:クエリはM.のすべてのコンテンツが含まれていることを示し %のM_:Mはの最後から二番目の位置にあるすべてのコンテンツにクエリを表す '「」を #EMPLOYEE FROM WHERE AGE <20 DELETE 試み: #SQL文を実行 cursor.execute(SQL)# をすべてのレコードのリストを取得 =結果をcursor.fetchall() 以下のための行に結果: FNAME = 行[0] LNAME =行[1 ] 年齢 =行[2 ] セックス =ロウ[3 ] 収入 =行[4 ] #の印刷結果 を印刷(" FNAME =%sの、LNAME =%S、=%sの年齢、=%sの性別、収入は=%sの"%の\ (FNAME、LNAME、年齢、性別、収入)) を除い: 印刷(" エラー:できないfecthしますデータ" ) #关闭数据库连接 db.close()
上記のコードを書くためのSQL言語は、文字を形成し、オペレータインターフェースを呼び出すしようとしています。
新しいデータベースを配置するストレージのいくつかの例は以下の参考としてエクセル:中国の変容でエンコードが=「GBK」という注意を操作するデータフレームto_sqlここに呼び出します。
フォーム名を作成すると、データベースに書かれた進歩を必要としません。
#- * -コーディング:UTF-8 - * - "" " 火5月7日午後3時40分23秒2019で作成された @author:ext.wenzhe.tian """ から SQLAlchemyの輸入create_engineの 輸入PDのようパンダ ホスト = " 127.0。 0.1 ' ポート = 3306 のdb = ' beilixinyuan ' ユーザ = ' ルート' パスワード = ' twz1478963 ' エンジン = create_engine(STR(R " のMySQL +のMySQLdb://%S:" + '%sの"+ " ?@%sの/%sの文字セット= UTF8 ")% (ユーザー、パスワード、ホスト、DB)) してみてください: # DF = pd.read_csv(r'D:\ 2PHEV_v3.csv」、エンコーディングは= 'GBK') # 读取 テーブル= ' sale_phev ' SQL = " SELECT * FROM " + ' %sは'%(表) DF = pd.read_sql(SQL、CON = エンジン) # 写入 # df.to_sql( 'sale_ev'、CON =エンジン、if_existsの= 'APPEND'、インデックス=偽) を除き、Eなど例外: プリント(E。メッセージ) #2導出方法 #「」 ' #WHERE A及び/又はBの間に(A、B) #1 %値は、複数の文字を表すには、文字は_下線付き; #のM%で:できるワイルドカードで表される正規表現であることがM.の始まりのためのファジークエリ情報を意味 #%のM%は:クエリはM.のすべてのコンテンツが含まれていることを示し #1 M_%の:Mは、最後から2番目の位置にあるすべてのコンテンツにクエリを表す #'「」 # # # インポートのMySQLdb インポートAS PANDAS PD #オープンデータベースコネクティビティ DB = MySQLdb.connect(『ローカルホスト』、『ルート』、『twz1478963 』、" beilixinyuan "、文字セット= "" ) #カーソル操作を取得するには、カーソル()メソッドを使用して カーソル= db.cursorを(cursorClass = MySQLdb.cursors.DictCursor) SQL = " SELECT *は、FROM sale_ev " #はWHERE <20であるEMPLOYEE AGEのFROM DELETE 試み: #はSQL文を実行 cursor.execute (SQL) #は、すべてのレコードのリストの取得 結果= cursor.fetchall() pd.read_sql(SQL、CON = エンジン) を除く: 印刷(" エラー:データをfecthすることができません" ) H = リスト(結果) DF =をpd.DataFrame(H) デル結果 デル H