2016-04-09 8 views
0

ich diese Python-Code haben, der eine Tabelle EventsSQLalchemie. Ich bekomme nur ein Ergebnis für diese Abfrage

class Events(Base): 
    __tablename__ = 'events' 

    id = Column(Integer, primary_key=True) 
    name = Column(String(25), nullable=False) 
    email = Column(String(30), nullable=True) 
    phone_number = Column(String(15), nullable=True) 
    venue = Column(String(70), nullable=True) 
    description = Column(String(2000), nullable=True) 
    date = Column(String(15), nullable=True) 
    time = Column(String(10),nullable=True) 
    duration = Column(String(25),nullable=True) 
    who_made_me = Column(String(25),nullable=True) 
    address = Column(String(50),nullable=True) 

und nach Zugabe von Ereignissen y, und ihr

add = Events(name = "y") 
    add_two = Events(name = "ye") 
    con.add(add,add_two) 
    con.commit() 

Ich möchte für y suchen genannt erstellt und bekomme beide Ergebnisse. Ich habe versucht, zu verwenden:

search_results= con.query(Events).filter(Events.name.like("y")).all() 

und ich bekomme nur ein Ergebnis, „y“, ich möchte kein Ergebnis, das wie „ihr“ oder „yr“ ähnlich wie „y“ ist.

Welche Abfrage-Methode verwende ich?

Antwort

0

Versuchen Sie mit '%' nach y.

search_results= con.query(Events).filter(Events.name.like("y%")).all() 

Lassen Sie uns wissen, ob es funktioniert.

+0

Nö, nur noch ein Ergebnis zurückgibt –

+0

können Sie die Import-Anweisungen fügen, also kann ich die Referenzklassen richtig überprüfen. und geben Sie an, welche Datenbanksoftware Sie ebenfalls verwenden. – Mitty

+0

von DB Import * meine DB-Datei engine = create_engine ('sqlite: ///users.db') Base.metadata.bind = Motor DBSession = sessionmaker (bind = Motor) con = DBSession() mit SQLite –

0

Sie nur ein Ergebnis in Ihrer DB erhält, weil Sie nur mit Ihrer Sitzung ein Ereignis begehen. Versuchen:

add = Events(name = "y") 
add_two = Events(name = "ye") 
con.add(add) 
con.add(add_two) 
con.commit() 
+0

Dies ist nicht der Fall ist, beide von ihnen existieren. Ich habe von ihnen separat –

+0

Was abfragt Sie mit Ihnen: 'con.query (Events) .Alle()'? Ich bekomme nur ein Ereignis – API

+0

Ich habe sie separat hinzugefügt. und trotzdem funktioniert die Abfrage nicht. –

Verwandte Themen