SQLAlchemy

SQlAlchemy یک تول کیت SQL آزاد و ORM برای زبان برنامه نویسی پایتون است و تحت لیسانس MIT منتشر شده است. SQlAlchemy مجموعه ای کامل از تداوم الگوهای شناخته شده در سطح سازمانی، برای دسترسی کار آمد بالا به پایگاه داده، وفق دادن به یک مثال و دامنه زبان برنامه نویس پایتون است.

فلسفه SQLAlchemy این است که پایگاه داده کمتر مانند یک مجموعه های شی رفتار کند تا حجم و عمل کرد بیشتری داشته باشد در حالی که مجموعه های شی کمتر مانندجدول ها هستند و در نتیجه انتزاع بیشتری به وجود می آید. به همین دلیل SQL بیشتر با الگوی Data Mapper سازگار شده تا الگوی رکورد فعال (active record)که توسط تعدادی از دیگر ORM ها استفاده می شد.هرچند پلاگین های اختیاری مانند Elixir و declarative به کاربران اجازه می دهند تا استفاده از ترکیب declarative را گسترش بدهند.

کیمیای اس کیو ال ابتدا در فوریه 2006 منتشر شد و به سرعت به یکی ازمحبوب ترین ابزار های ORM در جامعه پایتون تبدیل شد.


شروع کار

ما در ابتدا SQLAlchemy را نصب می کنیم. مطمین باشید که آخرین ورژن را نصب می کنید، این کار شما را بسیار آسان تر می کند. حال easy_install --help را اجرا کنید. اگر شما لیستی از دستورات و تنظیمات را دریافت کردید، setuptools روی سیستم شما نصب شده و به درستی کار می کند و شما می توانید از پاراگراف بعدی صرف نظر کنید. اگر شما خطایی مانند command not found دریافت کردید، شما نیاز به نصب setuptools دارید. ez_setup.py را دانلود و اجرا کنید.(اگر شما از لینوکس یا OS X استفاده می کنید، ممکن است نیاز به اجرای آن به عنوان روت داشته باشید: sudo python ez_setup.py)

بعد از نصب setuptools شما می توانید SQLAlchemy را با اجرای easy_install SQLAlchemy نصب کنید. در لینوکس و OS X ممکن است شما نیاز به اجرای آن به عنوان روت داشته باشید:sudo easy_install SQLAlchemy این به صورت اتوماتیک به پکیج راهنمای پایتون متصل می شود، آخرین ورژن SQLAlchemy را پیدا می کند، دانلودش می کند و آن را در دایرکتری بسته پایگاه شما قرار می دهد.

شما همچنین نیاز به نصب دارید آخرین ورژن pysqlite دارید. easy_install pysqlite را اجرا کنید تا آن را بیاورد. در ویندوز شما به انجام کار دیگری نیاز ندارید. در مک یا لینوکس شما همچنین باید sqlite3 را نصب کنید. جزییات دقیق نصب بسته از سیستم به سیستم متفاوت خواهد بود. فقط مطمین باشید برنامه ای که نصب می کنید sqlite3 است، نه sqlite یا sqlite2

حالا شما همه چیز را نصب کرده اید و آماده شروع هستید!

اولین کد

با یک برنامه ساده شروع می کنیم. این کد را در یک ویرایشگر متن کپی کنید و آن را با عنوان firststeps.py ذخیره کنید: 

 

from sqlalchemy import *
db = create_engine('sqlite:///tutorial.db')
db.echo = False  # Try changing this to True and see what happens
metadata = BoundMetaData(db)
users = Table('users', metadata,
   Column('user_id', Integer, primary_key=True),
   Column('name', String(40)),
   Column('age', Integer),
   Column('password', String),
)
users.create()
i = users.insert()
i.execute(name='Mary', age=30, password='secret')
i.execute(,
         ,
         )
s = users.select()
rs = s.execute()
row = rs.fetchone()
print 'Id:', row[0]
print 'Name:', row['name']
print 'Age:', row.age
print 'Password:', row[users.c.password]
for row in rs:
   print row.name, 'is', row.age, 'years old'

 

انتخاب دستورات

چند مثال

Data insertion

Querying

Schema definition


صفحه قبلی: Glade
صفحه بعدی: Launchpad