ORM (Object Relational Mapping): автоматизира записването на данни

ORM (лого на базата данни и изходния код)

Замисляли ли сте се или е необходимо да предавате данни от вашите обекти на изходния код в съдържание или база данни? Би било много практично да разполагате с инструмент, който да може да прави това автоматично и да не го прави ръчно, нали? Но за да е възможно тези стойности трябва да бъдат в правилния формат. Е, ако трябва да направите това, трябва да знаете ORM (обектно релационно картографиране).

С ORM данните на вашите обекти ще бъдат предадени в правилен формат, за да можете да запазите цялата тази информация в база данни, като ги картографирате. Това създава виртуална база данни, където стойностите, намерени в приложението, което сте създали във вашия код, и по този начин са свързани с тази база данни за да им дадете упоритост и да ги регистрирате по този прост начин. Това дава запазената информация с постоянство, за да може да се съхранява, анализира, записва или използва по-късно.

Por ejemploПредставете си, че имате програма на Python, която отговаря за отчитането на стойности от сензор DHT11, който записва температура и влажност. Но не искате да записвате тези стойности от среда. По прост начин можете да създадете изходен код, за да програмирате това, от което се нуждаете, и да прочетете стойностите, взети от сензора, и да ги покажете на екрана. Но какво, ако искате да съхранявате стойностите за анализ, когато са настъпили пикове на тези стойности или за друга помощна програма?

В този случай трябва да имате възможност тези данни да се записват едновременно в база данни и тук ORM е полезен. В допълнение към вашия проект „направи си сам“ можете да съхранявате това, от което се нуждаете, и да третирате ценностите ръчно или чрез друг софтуер, благодарение на факта, че сте ги записали в база данни ...

Какво е ORM?

El обектно-релационно картографиране или ORM за съкращението си на английски език, това е техника за програмиране, която служи за трансформиране на данни, използвани в обектно-ориентирания програмен език или програма и релационната база данни (тип SQL) като персистенция. Това ще накара програмните стойности да създадат виртуална обектно-ориентирана база данни, която да съдържа данните, от които се нуждаете.

Ако някога сте програмирали приложение, свързано с база данни, ще забележите, че е доста трудно да трансформирате информацията, за да я адаптирате към базата данни или обратно. А именно, картографирането е досадно нещо че можете да автоматизирате с помощта на ORM, в допълнение към това да го направите независим от базата данни, която искате да използвате, и дори можете да промените механизма на базата данни без проблем.

Un практически пример е автомобил F1, където има серия от сензори, които измерват стойности на налягане, температура, разход, обороти в минута, скорост, ускорение, смяна на предавките, движения на кормилното управление, масло и др. Всички тези стойности се виждат в реално време от инженерите на техните компютри благодарение на телеметрията. Но когато сесията приключи, инженерите трябва да проучат и анализират тези данни, за да разберат как да подобрят настройката, да развият автомобила или какво е причинило неуспеха. За да е възможно това, те трябва да бъдат експортирани в база данни.

Предимства и недостатъци на ORM

Както вече коментирах, с ORM ви позволява да абстрахирате от базата данни и значително опростява необходимия изходен код. Картографирането ще бъде автоматично и това означава да свалите много проблеми от раменете си при програмиране. В допълнение към лекотата и скоростта на използване, той осигурява сигурност на слоя за достъп до данни срещу атаки.

Но не всички са добри неща ORM също има своите недостатъци. В силно натоварени среди може да намали производителността, тъй като добавяте допълнителен слой към системата. Това включва и изучаване на ORM, така че да можете да го използвате, което може да отнеме време, за да разберете правилно и да се възползвате.

ORM за езици за програмиране

В зависимост от езика за програмиране, който използвате можете да използвате ORM. Не можете да използвате каквато и да е ORM, трябва да използвате правилната. Например:

  • Ява: Hibernate, MyBatis, iBatis, Ebean и др.
  • . NET: Entity Framework, nHibernate, MyBatis.Net и др.
  • PHP: Doctrine, Propel, Rocks, Torpor и др.
  • Python: Peewee, SQLAlchemy, PonyORM, Elixir и др.

Пример за Python и ORM

Peewee е прост и съкратен ORM за използване с Python. Можете да получите повече информация от вашия Официален сайт. Също така трябва да знаете, че Peewee поддържа различни СУБД, тоест няколко системи за управление на бази данни, като SQLite, MySQL и Postgresql. Просто трябва да смените първоначалната декларация bbdd и това е всичко.

Например, в вашето бързо ръководство или бърз старт От сайта можете да видите прости примери за код с Peewee по следния начин:

from peewee import *

db = SqliteDatabase('people.db')

class Person(Model):
    name = CharField()
    birthday = DateField()

    class Meta:
        database = db # This model uses the "people.db" database.

В случай, че това ви се струва малко, вие имате на разположение инструмента pwiz, програма, която получава Peewee модели от бази данни. Например:

<br data-mce-bogus="1">

python -m pwiz -e postgresql basedatos &gt; modelo.py<br data-mce-bogus="1">

 

 


Съдържанието на статията се придържа към нашите принципи на редакторска етика. За да съобщите за грешка, щракнете върху тук.

Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван.

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.

тест по английскиТествайте каталонскииспанска викторина