Visual Studioの2013年のPythonの開発(b)は--- PythonのSQL Serverのデータベース接続

1.パッケージをインストールするには、3つの最初の必要性は:

SQLAlchemyの

フラスコSQLAlchemyの

pydoc

次のようにインストールは次のとおりです。

ENVを選択して右クリックして選択し、「Pythonのパッケージをインストールします...」

次のインターフェイスがポップアップし、パッケージ名を入力し、[OK]をクリックします。

 

 

2.次のようにプロジェクトファイルに「db_mg.py」を追加し、コードは次のとおりです。

#1 db_mg.py 
から SQLAlchemyのインポートcreate_engine
 から sqlalchemy.ormのインポートsessionmaker
 から FlaskWebProject3.modelsはインポートベース
 
クラスDatabaseManagementを():
     DEF  __init__ (自己):
        self.engine = create_engine(" MSSQL + pymssql:// SA:[email protected]。 0.1 / UserRights?のcharset = UTF8 "、エコー=真、=エンコーディング' UTF8 '、convert_unicode = TRUE)

        DBsession = sessionmaker(バインド= self.engine)    创建DBsession类
        self.session = DBsession()    创建对象
 
    DEF add_obj(自己、OBJ):    添加内容
        self.session.add(OBJ)
        self.session.commit()    提交
        戻りOBJ
     DEF queryall(自己、target_class):    查询内容 
        result_list = self.session.query(target_class).ALL()
         戻りresult_list
     DEF query_all(自己、target_class、query_filter):    查询内容 
        result_list = self.session.query(target_class).filter(query_filter).ALL()
         リターンresult_listの
 
    デフupdate_by_filter(自己、OBJ、update_hash、query_filter):     更新の内容の 
        self.session.query(。OBJ __class__ ).filter(query_filter).update(update_hash)
        self.session.commit()
 
    デフ delete_by_filter(自己、OBJ、query_filter) :      删除内容
        self.session.query(OBJ).filter(query_filter).delete()
 
    デフ近い(自己):    关闭セッション
        self.session.close()
 
    デフ EXECUTE_SQL(自己、sql_str):    执行SQL语句
        リターン self.session.execute(sql_str)

間で

create_engine( "+ pymssql MSSQL:// SA :? [email protected]/Userのcharset = UTF8"、=真のエコーを、エンコード= 'UTF8'、convert_unicode = 真)ログイン名として"sa"アカウントで、 「 123456」データベースのログイン名として、データベース・サーバのログイン名として「127.0.0.1」、「ユーザー」、データベース名です
あなたは以下の「= UTF8文字セット」を追加しない場合、中国の文字化けのデータベースからチェックアウトすることが可能です

 3.特定のコール次のように:

views.py

「」「
フラスコアプリケーションのルートとビュー。
『』」

から日時インポート日時
 からフラスコインポートrender_template、セッション
 FlaskWebProject3インポートアプリから
からフラスコインポートフラスコ、要求 
 から flask.json インポートjsonify
 インポートOS
 から flask.helpers インポートmake_responseを

から flask_bootstrap 輸入ブートストラップ

から wtformsはインポートStringField、SubmitFieldを
 から wtforms.validatorsインポート必要
 から flask_wtf.formのインポートフォーム
 から sqlalchemy.sql.schemaの輸入から sqlalchemy.ext.declarative.api 輸入declarative_base
 からクリックインポートINT
 から lib2to3.fixer_util インポート文字列
 から FlaskWebProject3の輸入アプリ、モデル
 から flask_sqlalchemy 輸入SQLAlchemyの
 から FlaskWebProject3.models 輸入者、ユーザー、エンジン
 から FlaskWebProject3.db_mgインポートDatabaseManagement
 から sqlalchemy.orm.sessionのインポートsessionmaker
 から sqlalchemy.engine インポートcreate_engine
 から _operatorのインポートand_ 

FlaskWebProject3.Person輸入者から




#のApp.configファイル[ 'SESSION_TYPE'] = 'ファイルシステム' 
#のApp.configファイル[ 'SECRET_KEY'] = os.urandom(24) app.configを[ 'SQLALCHEMY_DATABASE_URI'] = 'MSSQL + pymssql:// SA:?[email protected]/UserRightsのcharset = UTF8' app.configを[ 'SQLALCHEMY_COMMIT_ON_TEARDOWNは'] = TRUE 
#の#をapp.configを[ 'SQLALCHEMY_TRACK_MODIFICATIONS'] = Falseのapp.configを[ 'SQLALCHEMY_NATIVE_UNICODEは'] = TRUE; 
#のApp.configファイル[ 'SQLALCHEMY_TRACK_MODIFICATIONSが'] = TRUE 
#1 App.configファイル[ 'SQLALCHEMY_ECHOが'] = TRUE 
App.configファイルを[ ' JSON_AS_ASCIIは' ] = 


の@ app.routeを(' / 111 '、方法は= [ ' GET ' ])
 DEF GETUSER():

 db_session = DatabaseManagement()
 query_filter = and_(Person.Name == " ジェームス"、Person.Password == " 123456 " )。 db_session。{} 
  のための項目person_list:
    出力[ " 名前" ] = item.Name   
    出力[ " パスワード" ] = item.Password 
    
 戻り jsonify({ ' メッセージ' :出力})    


場合 __name__ == ' __main__ ' 
 

 app.run(自己)
   

注意

app.configを[「JSON_AS_ASCIIは」] = Falseを返されたJSONオブジェクトは設定が文字化けJSON中国返されていない場合、文字化けするかどうかを中国語で設定されています

 

おすすめ

転載: www.cnblogs.com/zhangabo/p/11504370.html
おすすめ