python
  • mysql
  • insert
  • 2017-02-13 12 views 0 likes 
    0

    MySQLのINSERTクエリに問題があります。MySQLのpythonで。クエリの挿入が機能しない

    import socket 
    import MySQLdb 
    
        def create_db(): 
         db1 = MySQLdb.connect(host="localhost",user="root",passwd="root") 
         cursor = db1.cursor() 
         sql = 'CREATE DATABASE IF NOT EXISTS env_data;' 
         select_db = 'USE env_data' 
         ins = "insert into env_data(cpu_usage, date, mem_usage) values('40%', '1999-01-01 11:11:11', '25%');" 
         engine_db = "set sql_mode='NO_ENGINE_SUBSTITUTION'" 
         us = 'CREATE TABLE IF NOT EXISTS env_data (id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,date datetime NOT NULL,cpu_usage varchar(10) NOT NULL,mem_usage varchar(10) NOT NULL);' 
         cursor.execute(select_db) 
         cursor.execute(us) 
         cursor.execute(engine_db) 
         cursor.execute(ins) 
    

    実行データベースとテーブルが正しく作成された後、しかし、インサートない作品:

    は、ここに私のpythonのコードです。 私のmysqlサーバでこのクエリを実行すると動作しますが、このpythonスクリプトからはcpu_usage、date、mem_usageには挿入がありません。

    スクリプトでは、私もmysql_notes = 0/mysql_notes = 1を試してみました。

    この問題をお手伝いしてもらえますか?

    答えて

    0

    挿入文の後にdb1.commit()を追加することができます。これは、自動コミットオプションがあり、デフォルトでに設定されているため、mysqlワークベンチ/コマンドラインで動作します。それ以外の場合は、同じことをしなければなりません。

    関連する問題