Rumah >pangkalan data >tutorial mysql >Rangka kerja MySql dan ORM: Bagaimana untuk melaksanakan operasi pangkalan data dengan lebih cekap
Dengan perkembangan pesat teknologi Internet, aplikasi pangkalan data telah menjadi semakin meluas, dan yang paling meluas digunakan ialah MySql. Sebagai pangkalan data hubungan yang stabil, selamat, mudah digunakan dan berprestasi tinggi, julat aplikasi MySql merangkumi pelbagai senario. Sama ada dalam pelbagai bidang seperti e-dagang, kewangan, elektrik, pertanian dan sebagainya, MySql memainkan peranan yang semakin penting.
Walau bagaimanapun, dalam proses pembangunan sebenar, kita selalunya perlu melakukan operasi data yang kompleks Pada masa ini, pernyataan pertanyaan MySql yang mudah mungkin tidak memenuhi keperluan kita Pada masa ini, kita perlu menggunakan beberapa teknologi yang lebih canggih untuk beroperasi pada data. Pada masa ini, rangka kerja ORM telah wujud.
Rangka kerja ORM, atau rangka kerja pemetaan hubungan objek, ialah teknologi yang memetakan jadual dalam pangkalan data hubungan kepada kelas dalam pengaturcaraan berorientasikan objek. Rangka kerja ORM boleh membantu kami melaksanakan pelbagai operasi pangkalan data dengan lebih cekap, dan boleh digunakan dalam bahasa pengaturcaraan yang berbeza, seperti Java, Python, dll. Di bawah ini kami akan memperkenalkan cara menggunakan rangka kerja MySql dan ORM untuk melaksanakan operasi pangkalan data dengan lebih cekap.
1 Gunakan MySql untuk menambah, memadam, mengubah suai dan menyemak data
Mari kita lihat menggunakan MySql untuk menambah, memadam, mengubah suai dan menyemak data. MySql menyediakan pernyataan SQL yang sangat mudah, yang boleh kami gunakan dengan mudah untuk melaksanakan pelbagai operasi pada pangkalan data. Sebagai contoh, berikut ialah jadual maklumat pelajar yang mudah:
CREATE TABLE student( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(30), age INT );
Kita boleh menggunakan pernyataan SQL berikut untuk memasukkan sekeping data ke dalam jadual:
INSERT INTO student(name, age) VALUES('Tom', 18);
Gunakan pernyataan SQL berikut untuk melaksanakan operasi pertanyaan:
SELECT * FROM student WHERE name = 'Tom';
Gunakan pernyataan SQL berikut untuk operasi kemas kini:
UPDATE student SET age=19 WHERE name='Tom';
Gunakan pernyataan SQL berikut untuk operasi pemadaman:
DELETE FROM student WHERE name='Tom';
Gunakan MySql untuk operasi data adalah mudah, jika kita perlu melaksanakan sesuatu yang lebih kompleks Untuk beroperasi, anda perlu menggunakan beberapa teknik lanjutan.
2. Gunakan rangka kerja ORM untuk menambah, memadam, mengubah suai dan pertanyaan data
Menggunakan rangka kerja ORM boleh melaksanakan operasi pangkalan data dengan lebih cekap. Seterusnya, kami akan menggunakan rangka kerja ORM dalam Python - SQLAlchemy untuk menunjukkan cara melaksanakan operasi pangkalan data.
Kita perlu memasang SQLAlchemy terlebih dahulu. Gunakan arahan berikut untuk memasang:
pip install sqlalchemy
Apabila menyambung ke pangkalan data, kita perlu menggunakan kod berikut:
rreeedi mana pengguna adalah Nama pengguna pangkalan data MySqL ialah kata laluan hos adalah nama port adalah nama pangkalan data yang akan disambungkan, di sini kami menggunakan utf8; .
Hubungan pemetaan antara model ORM dan jadual perlu ditakrifkan. Sebagai contoh, kami mentakrifkan model jadual untuk jadual maklumat pelajar Kodnya adalah seperti berikut:
from sqlalchemy import create_engine engine = create_engine('mysql+pymysql://user:password@host:port/database_name?charset=utf8')
Di sini kami menggunakan kelas asas declarative_base() yang disediakan oleh SQLAlchemy untuk membolehkan kami mentakrifkan kelas model jadual, dan kemudian tentukan medan jadual dalam nama dan jenis kelas Pelajar. Ambil perhatian bahawa __tablename__ mesti dinyatakan di sini, iaitu nama jadual yang sepadan.
Apabila membuat sesi, anda perlu mencipta kilang sesi terlebih dahulu, dan kemudian gunakan kilang sesi untuk mencipta sesi. Seperti yang ditunjukkan di bawah:
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)
Antaranya, sessionmaker(bind=enjin) bermaksud menggunakan enjin yang dikembalikan oleh create_engine untuk mengikat sessionmaker. Kemudian kita boleh menggunakan sesi untuk mengakses pangkalan data untuk operasi.
Seterusnya kami akan menunjukkan cara masing-masing melakukan operasi tambah, padam, ubah suai dan semak.
(1) Tambah data
Gunakan kod berikut untuk menambah data:
from sqlalchemy.orm import sessionmaker Session = sessionmaker(bind=engine) session = Session()
Contoh ini menunjukkan cara mencipta objek Pelajar dan menambahnya pada sesi, dan Gunakan kaedah session.commit() untuk menyerahkan data ke pangkalan data. Jika kaedah session.commit() tidak dipanggil, data tidak akan diserahkan kepada pangkalan data.
(2) Data pertanyaan
Gunakan kod berikut untuk menanyakan data:
student = Student(name='Tom', age=18) session.add(student) session.commit()
Contoh ini menunjukkan cara menggunakan sesi untuk menanyakan jadual, di mana pertanyaan (Pelajar) bermaksud Untuk beroperasi pada jadual Pelajar, penapis(Student.name=='Tom') bermaksud menapis data yang medan namanya sama dengan Tom dan all() bermaksud menanyakan semua data.
(3) Ubah suai data
Gunakan kod berikut untuk mengubah suai data:
results = session.query(Student).filter(Student.name=='Tom').all() for result in results: print(result.id, result.name, result.age)
Contoh ini menunjukkan cara mengubah suai data pertama yang memenuhi syarat dan menukar umur data Nilainya ialah 19, dan kaedah session.commit() digunakan untuk memasukkan data yang diubah suai.
(4) Padam data
Gunakan kod berikut untuk memadam data:
update_student = session.query(Student).filter(Student.name=='Tom').first() update_student.age = 19 session.commit()
Contoh ini menunjukkan cara untuk memadamkan sekeping data pertama yang memenuhi syarat dan sesi penggunaan .commit () kaedah untuk menyerahkan data yang dipadam.
Pada ketika ini, kami boleh menggunakan Python dan SQLAlchemy untuk menguruskan pangkalan data kami dengan lebih cekap.
Ringkasan:
Sebagai pangkalan data hubungan yang biasa digunakan, MySql adalah mudah dan intuitif untuk digunakan, tetapi operasi yang kompleks mungkin memerlukan penggunaan teknologi yang lebih maju. Rangka kerja ORM boleh membantu kami melaksanakan operasi pangkalan data yang kompleks dengan lebih cekap, dan menggunakan Python dan SQLAlchemy boleh membantu kami menangani keperluan pangkalan data dengan lebih baik dalam kerja harian kami. Saya harap artikel ini dapat membantu anda menguasai penggunaan rangka kerja MySql dan ORM dengan lebih baik.
Atas ialah kandungan terperinci Rangka kerja MySql dan ORM: Bagaimana untuk melaksanakan operasi pangkalan data dengan lebih cekap. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!