2017-02-23 14 views
0

は、だから、私はその後、私のデータベース自体や編集に入り、問題イム、されたが、私はフラスコレストAPIに更新されたテーブルが表示されませんか?

"Select * from tables where IP = '123'" -> returns "Capacity" : 80 

ただし、クエリを実行すると言うことができますので、今、この

ようになりフラスコAPIエンドポイントを持っています容量は50になります。注:データベースコンソール自体ではなくAPIを使用します。

ただし、残りのAPIはテーブルの変更を確認するのに5〜10分かかります!テーブル内の同じクエリが50を返す場合でも、残りのAPI内で同じクエリをエンドポイントに適用すると、80が返されます。

フラスコアプリケーション自体にキャッシュがいくつかありますか?

編集:うーん...私はデータベースに再接続したときに正常に動作するようです

db = MySQLdb.connect("address","iuser","pass","table") 
cursor = db.cursor() 

@app.route('/sqlStatement', methods=['POST']) 
def run_statement(): 
    try: 
     statement = request.values['statement'] 
     try: 
      cursor.execute(statement) 
     except mysql.connector.Error: #MySQLdb.Warning) as e: 
      return "BAD SQL STATEMENT DUMBASS" 

     return jsonify(data=cursor.fetchall()) 

    except (AttributeError, MySQLdb.OperationalError): 
     open_db() 
     return run_statement() 

答えて

0

欠落していた私は、データを挿入しようとする私のコードを使用した後db.commit() :)

はこれを気づきました、それはデータベースの一貫性を維持するだけでなく、読み込みにも役立ちました。オートコミットをオンにすると、この問題も解決されます。

関連する問題