标签: sqlalchemy

终端中sqlite的无限语法错误

我正在尝试使用sqlite3并创建数据库,但是我无法入门.我去终端并输入sqlite3开始.我得到以下提示:

sqlite>
Run Code Online (Sandbox Code Playgroud)

我安装了sqlAcademy并且正在尝试完成本教程,但是有以下示例:

>>> import sqlalchemy
>>> sqlalchemy.__version__ 
0.7.0
Run Code Online (Sandbox Code Playgroud)

他们似乎在终端中输入,但我的代码显示错误:

sqlite> import sqlalchemy;
Error: near "import": syntax error
Run Code Online (Sandbox Code Playgroud)

有没有我应该在终端中使用的包装器,所以我可以输入Python?我是否需要单独编写,编译和运行所有示例,还是有更简单的方法?

我知道这听起来很模糊,但我认为我做的事情非常明显错误.太新了,不知道它是什么.

python sqlite terminal sqlalchemy

-1
推荐指数
1
解决办法
175
查看次数

带有选定列的 SQLAlchemy 中的 BETWEEN 子句

我想在 SQLAlchemy 中执行这个查询

SELECT customer_name FROM Orders
WHERE order_id = 101 AND order_date BETWEEN '2018-07-01' AND '2018-07-31';
Run Code Online (Sandbox Code Playgroud)

这是我的模型:

class Orders(db.Model):
    id = db.Column(db.Integer,primary_key=True)
    order_id = db.Column(db.Integer,nullable=False)
    customer_name = db.Column(db.String(100),nullable=False)
    order_date = db.Column(db.String(100),nullable=False)
    remarks = db.Column(db.String(100),nullable=False)
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy python-3.x

-1
推荐指数
1
解决办法
4637
查看次数

导出数据帧时如何修复“生成器”对象没有属性“to_csv”

我正在使用 Python 将数据从 Oracle 表导出到 Pandas DataFrame,然后导出到 CSV 文件。

但我收到此错误:

AttributeError: 'generator' object has no attribute 'to_csv'
Run Code Online (Sandbox Code Playgroud)

我无法找出我的代码的问题出在哪里:

import cx_Oracle
import csv
import pandas as pd
import sqlalchemy
from sqlalchemy import create_engine

DATABASE = "MY database"
SCHEMA   = "MY USER"
PASSWORD = "MY PASS"
connstr  = "oracle://{}:{}@{}".format(SCHEMA, PASSWORD, DATABASE)
conn     = sqlalchemy.create_engine(connstr)
result=pd.read_sql('My QUERY' , con=conn, chunksize=10000)
result.to_csv("test",sep=',',chunksize=10000)
Run Code Online (Sandbox Code Playgroud)

python oracle sqlalchemy export-to-csv pandas

-1
推荐指数
1
解决办法
4517
查看次数

AttributeError:'function'对象没有使用sqlalchemy'确认'的属性

我正在修改cookiecutter Flask app.这使用flask_login usermixin.

我有一个方法寄存器,其中包含:

from myflaskapp.models.user import User

if form.validate_on_submit()
    new_user = User.query.filter_by(email=posted_email).first
    if new_user:
        if new_user.confirmed:
Run Code Online (Sandbox Code Playgroud)

posted_email不在表中,所以我认为会返回None值.为什么这不起作用?

myflaskapp.models.user:

from flask.ext.login import UserMixin
from myflaskapp.extensions import db, bcrypt
from myflaskapp.database import (
    Column,
    Model,
    ReferenceCol,
    relationship,
    SurrogatePK,
)



class User(UserMixin, SurrogatePK, Model):

    __tablename__ = 'users'
    username = Column(db.String(80), nullable=True)
    email = Column(db.String(80), nullable=False)
    #: The hashed password
    password = Column(db.String(128), nullable=True)
    created_at = Column(db.DateTime, nullable=False, default=dt.datetime.utcnow)
    first_name = Column(db.String(30), nullable=True)
    last_name = Column(db.String(30), nullable=True)
    active = Column(db.Boolean(), default=False) …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy

-2
推荐指数
1
解决办法
2482
查看次数

TutorialsPoint - Flask - SQLAlchemy无效

我完成了教程点上的所有内容(只是复制和粘贴),但当我尝试添加学生条目时,即"添加学生",它给出了

错误请求浏览器(或代理)发送了此服务器无法理解的请求.

请告知本教程是否有任何问题.

它在def new()中的这一行失败了,在app.py中:

 student = students(request.form['name'], request.form['city'], request.form['addr'], request.form['pin'])
Run Code Online (Sandbox Code Playgroud)

无论谁将其标记下来.请注意,这是一个充满拼写错误和错误缩进的教程.我只是一名学生.关闭它,我什么都不会学到.

参考:http://www.tutorialspoint.com/flask/flask_sqlalchemy.htm

from flask import Flask, request, flash, url_for, redirect, render_template
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///students.sqlite3'
app.config['SECRET_KEY'] = "random string"

db = SQLAlchemy(app)

class Students(db.Model):
    id = db.Column('student_id', db.Integer, primary_key = True)
    name = db.Column(db.String(100))
    city = db.Column(db.String(50))
    addr = db.Column(db.String(200)) 
    pin = db.Column(db.String(10))

    def __init__(self, name, city, addr,pin):
        self.name = name
        self.city = city
        self.addr = …
Run Code Online (Sandbox Code Playgroud)

python sqlite sqlalchemy flask

-2
推荐指数
1
解决办法
998
查看次数

AttributeError: 'SQLAlchemy' 对象没有属性 'string'

因为我是 Python 和 Flask 的新手,所以我被困住了。目前我正在学习一个名为 Learning Flask 的视频课程。我已经创建了一个模型,但是当我尝试启动应用程序时出现错误

from flask_sqlalchemy import SQLAlchemy
from werkzeug import generate_password_hash, check_password_hash

db = SQLAlchemy()

class User(db.Model):
    __tablename__ = 'users'
    uid = db.Column(db.Integer, primary_key =True)
    firstname = db.Column(db.string(100))
    lastname = db.Column(db.string(100))
    email = db.Column(db.String(120), unique=True)
    pwdhash = db.Column(db.String(54))

    def __init__(self, firstname, lastname, email, password):
        self.firstname = firstname.title()
        self.lastname = lastname.title()
        self.email = email.lower()
        self.set_password(password)

    def set_password(self, password):
        self.pwdhash = generate_password_hash(password)

    def check_password(self, password):
        return check_password_hash(self.pwdhash, password)
Run Code Online (Sandbox Code Playgroud)
(venv)smurf@tesla:~/WorkInProgress/learning-flask$ python routes.py
Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy

-2
推荐指数
1
解决办法
7014
查看次数

在烧瓶上制作多租户应用程序

我正在尝试使用 Flask 制作一个多租户应用程序,我一直在遵循本指南,我正在使用 Postgres sql 作为数据库:

https://medium.com/@smirnov.am/multitenancy-with-flask-6f5375a34f55

所以我的困惑点是,当我尝试重定向到指定的 url 时,我不断收到内部服务器错误,当我查看日志时,这就是我得到的:

TypeError: index() got an unexpected keyword argument 'organization_name'

在遵循指南时,我将执行与他所做的完全相同的步骤,但我无法获得最终输出以表明它确实有效。

这就是我构建 app.route 的方式

@app.route("/<organization_name>/users")
def index(organization__name):
    organization_session = get_organization_session(organization__name)
    if not organization_session:
        print(404)
    users = organization_session.query(Organization).all()
    return jsonify({organization__name: [i.username for i in users]})
Run Code Online (Sandbox Code Playgroud)

这就是我设置多租户设置的方式:


DB_URI = my postgres uri 

# Manages the the multiple dbs for the organization

@simple_cache
def get_known_organizations():
    organizations = Organization.query.all()
    return [o.name for o in organizations]


def prepare_bind(organization):
    if organization not in current_app.config['SQLALCHEMY_BINDS']:
        current_app.config['SQLALCHEMY_BINDS'][organization] = DB_URI.format(organization)
    return …
Run Code Online (Sandbox Code Playgroud)

python postgresql sqlalchemy flask

-2
推荐指数
1
解决办法
2175
查看次数

如何打印实际 SQLAlchemy 查询以进行故障排除:SQLAlchemy 过滤语句将过滤条件替换为 %(column_name_1)s

我有一个 SQLAlchemy 查询,如下所示:

query = db.session.query(
    Place.name,
    Place.population,
).filter(Place.population==8000)
Run Code Online (Sandbox Code Playgroud)

但是当我打印查询时,结果如下:

SELECT place.name AS place_name, place.population AS place_population
FROM place
WHERE place.population = %(population_1)s
Run Code Online (Sandbox Code Playgroud)

我不明白为什么它不断用 替换我的过滤条件%(population_1)s。这个查询是 Flask 应用程序的一部分,也许有什么我不明白的地方?

编辑:更改标题以更描述实际问题。

python sqlalchemy flask-sqlalchemy

-4
推荐指数
1
解决办法
5683
查看次数

为什么 SQLAlchemy 无法为映射表组装任何主键列?

我正在尝试制作一个 Flask Web 应用程序,该应用程序从用户那里获取输入并将其保存到数据库 (sqlite3) 中。我为“航班”表定义了一个类 Flight 来注册客户将通过的航班。还有一个不同的“乘客”表来存储乘客的名字。

================================================== ==================

我在 Windows 7 操作系统上的 Visual Studio 2019 中运行代码。

  • Python 3.7 64 位
  • Flask-SQLAlchemy 2.4.0
  • SQLAlchemy 1.3.4
  • 烧瓶 0.12.4
  • 点 19.1.1

================================================== ==================

这是我的模型课。

import os
from flask import Flask
from flask_sqlalchemy import SQLAlchemy

db=SQLAlchemy()

class Flight(db.Model):
    """Flight class"""
    __tablename__ = "flights"
    id = db.Column(db.Integer, pimary_key=True)
    origin = db.Column(db.String, nullable=False)
    destination = db.Column(db.String, nullable=False)
    duration = db.Column(db.Integer, nullable=False)

class Passenger(db.Model):
    """Passenger class"""
    __tablename__ = "passengers"
    id = db.Column(db.Integer, pimary_key=True)
    name = …
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy flask flask-sqlalchemy

-5
推荐指数
1
解决办法
3984
查看次数