Heim > Datenbank > MySQL-Tutorial > MySql- und ORM-Framework: So implementieren Sie Datenbankoperationen effizienter

MySql- und ORM-Framework: So implementieren Sie Datenbankoperationen effizienter

WBOY
Freigeben: 2023-06-15 20:00:05
Original
1897 Leute haben es durchsucht

Mit der rasanten Entwicklung der Internettechnologie sind Datenbankanwendungen immer weiter verbreitet, und die am weitesten verbreitete ist MySQL. Als stabile, sichere, einfach zu bedienende und leistungsstarke relationale Datenbank deckt MySql mit seinem Einsatzspektrum vielfältige Szenarien ab. Ob in verschiedenen Bereichen wie E-Commerce, Finanzen, Elektrizität, Landwirtschaft usw., MySql spielt eine immer wichtigere Rolle.

Im eigentlichen Entwicklungsprozess müssen wir jedoch häufig komplexe Datenoperationen durchführen. Zu diesem Zeitpunkt erfüllen einfache MySQL-Abfrageanweisungen möglicherweise nicht unsere Anforderungen. Zu diesem Zeitpunkt müssen wir einige fortschrittlichere Technologien verwenden, um die Datenmanipulation zu implementieren. Zu dieser Zeit entstand das ORM-Framework.

ORM-Framework oder objektrelationales Mapping-Framework ist eine Technologie, die Tabellen in relationalen Datenbanken Klassen in der objektorientierten Programmierung zuordnet. Das ORM-Framework kann uns dabei helfen, verschiedene Datenbankoperationen effizienter durchzuführen und kann in verschiedenen Programmiersprachen wie Java, Python usw. verwendet werden. Im Folgenden stellen wir vor, wie Sie das MySql- und ORM-Framework verwenden, um Datenbankoperationen effizienter zu implementieren.

1. Verwenden Sie MySql zum Hinzufügen, Löschen, Ändern und Überprüfen von Daten.

Sehen wir uns zunächst die Verwendung von MySql zum Hinzufügen, Löschen, Ändern und Überprüfen von Daten an. MySql bietet sehr einfache SQL-Anweisungen, mit denen wir problemlos verschiedene Vorgänge in der Datenbank ausführen können. Das Folgende ist beispielsweise eine einfache Schülerinformationstabelle:

CREATE TABLE student(
    id INT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(30),
    age INT
);
Nach dem Login kopieren

Wir können die folgende SQL-Anweisung verwenden, um ein Datenelement in die Tabelle einzufügen:

INSERT INTO student(name, age) VALUES('Tom', 18);
Nach dem Login kopieren

Verwenden Sie die folgende SQL-Anweisung für den Abfragevorgang:

SELECT * FROM student WHERE name = 'Tom';
Nach dem Login kopieren

Verwenden Sie Folgendes SQL-Anweisung für Aktualisierungsvorgänge:

UPDATE student SET age=19 WHERE name='Tom';
Nach dem Login kopieren

Verwenden Sie die folgende SQL-Anweisung, um Löschvorgänge durchzuführen:

DELETE FROM student WHERE name='Tom';
Nach dem Login kopieren

MySql für Datenoperationen zu verwenden ist einfach, aber wenn wir komplexere Vorgänge implementieren müssen, müssen wir einige fortgeschrittene Techniken verwenden.

2. Verwenden Sie das ORM-Framework, um Daten hinzuzufügen, zu löschen, zu ändern und zu überprüfen.

Mit dem ORM-Framework können Datenbankoperationen effizienter ausgeführt werden. Als Nächstes verwenden wir das ORM-Framework in Python – SQLAlchemy, um zu demonstrieren, wie Datenbankoperationen ausgeführt werden.

  1. SQLAlchemy installieren

Wir müssen zuerst SQLAlchemy installieren. Verwenden Sie zum Installieren den folgenden Befehl:

pip install sqlalchemy
Nach dem Login kopieren
  1. Mit der Datenbank verbinden

Beim Herstellen einer Verbindung mit der Datenbank müssen wir den folgenden Code verwenden:

from sqlalchemy import create_engine

engine = create_engine('mysql+pymysql://user:password@host:port/database_name?charset=utf8')
Nach dem Login kopieren

wobei user der Benutzername der MySqL-Datenbank ist; ; host ist der Hostname; port ist die Portnummer; datenbankname ist der Name der zu verbindenden Datenbank; hier verwenden wir utf8.

  1. Definieren Sie das ORM-Modell

Die Zuordnungsbeziehung zwischen dem ORM-Modell und der Tabelle muss definiert werden. Zum Beispiel definieren wir ein Tabellenmodell für eine Studenteninformationstabelle. Der Code lautet wie folgt:

from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String

Base = declarative_base()

class Student(Base):
    __tablename__ = 'student'

    id = Column(Integer, primary_key=True, autoincrement=True)
    name = Column(String(30))
    age = Column(Integer)
Nach dem Login kopieren

Hier verwenden wir die von SQLAlchemy bereitgestellte Basisklasse declarative_base(), um die Tabellenmodellklasse zu definieren und dann die Feldnamen zu definieren und Typen der Tabelle in der Student-Klasse. Beachten Sie, dass hier __tablename__ angegeben werden muss, was dem entsprechenden Tabellennamen entspricht.

  1. Sitzung erstellen

Beim Erstellen einer Sitzung müssen Sie zuerst eine Sitzungsfabrik erstellen und dann die Sitzungsfabrik zum Erstellen der Sitzung verwenden. Wie unten gezeigt:

from sqlalchemy.orm import sessionmaker

Session = sessionmaker(bind=engine)
session = Session()
Nach dem Login kopieren

Unter diesen bedeutet sessionmaker(bind=engine), dass die von create_engine zurückgegebene Engine zum Binden von sessionmaker verwendet wird. Dann können wir die Sitzung verwenden, um für Operationen auf die Datenbank zuzugreifen.

  1. Daten hinzufügen, löschen, ändern und prüfen

Als Nächstes zeigen wir, wie Vorgänge zum Hinzufügen, Löschen, Ändern und Prüfen ausgeführt werden.

(1) Daten hinzufügen

Verwenden Sie den folgenden Code, um Daten hinzuzufügen:

student = Student(name='Tom', age=18)
session.add(student)
session.commit()
Nach dem Login kopieren

Dieses Beispiel zeigt, wie Sie ein Student-Objekt erstellen, es zur Sitzung hinzufügen und die Methode session.commit() verwenden, um die Daten an zu senden die Datenbankmitte. Wenn die Methode session.commit() nicht aufgerufen wird, werden die Daten nicht an die Datenbank übermittelt.

(2) Daten abfragen

Verwenden Sie den folgenden Code, um Daten abzufragen:

results = session.query(Student).filter(Student.name=='Tom').all()
for result in results:
    print(result.id, result.name, result.age)
Nach dem Login kopieren

Dieses Beispiel zeigt, wie Sie eine Sitzung zum Abfragen der Tabelle verwenden, wobei query(Student) die Bearbeitung der Student-Tabelle bedeutet, filter(Student.name= ='Tom') bedeutet, die Daten herauszufiltern, deren Namensfeld gleich Tom ist, und all() bedeutet, alle Daten abzufragen.

(3) Daten ändern

Verwenden Sie den folgenden Code, um die Daten zu ändern:

update_student = session.query(Student).filter(Student.name=='Tom').first()
update_student.age = 19
session.commit()
Nach dem Login kopieren

Dieses Beispiel zeigt, wie Sie das erste Datenelement ändern, das die Bedingungen erfüllt, den Alterswert der Daten auf 19 ändern und verwenden session.commit()-Methode zum Übermitteln der geänderten Daten.

(4) Daten löschen

Verwenden Sie den folgenden Code, um Daten zu löschen:

delete_student = session.query(Student).filter(Student.name=='Tom').first()
session.delete(delete_student)
session.commit()
Nach dem Login kopieren

Dieses Beispiel zeigt, wie Sie das erste Datenelement löschen, das die Bedingungen erfüllt, und die Methode session.commit() verwenden, um die gelöschten Daten zu übermitteln.

An diesem Punkt können wir gerne Python und SQLAlchemy verwenden, um unsere Datenbank effizienter zu verwalten.

Zusammenfassung:

Als häufig verwendete relationale Datenbank ist MySql einfach und intuitiv zu verwenden, komplexe Vorgänge erfordern jedoch möglicherweise den Einsatz fortschrittlicherer Technologien. Das ORM-Framework kann uns dabei helfen, komplexe Datenbankoperationen effizienter durchzuführen, und die Verwendung von Python und SQLAlchemy kann uns dabei helfen, die Datenbankanforderungen in unserer täglichen Arbeit besser zu bewältigen. Ich hoffe, dass dieser Artikel Ihnen dabei helfen kann, die Verwendung des MySql- und ORM-Frameworks besser zu beherrschen.

Das obige ist der detaillierte Inhalt vonMySql- und ORM-Framework: So implementieren Sie Datenbankoperationen effizienter. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage