Cơ sở dữ liệu trong web2py:

Một phần của tài liệu Xây dựng website tin tức và module lấy tin bài tự động luận văn tốt nghiệp đại học (Trang 33 - 38)

Web2py cung cấp một lớp cơ sở dữ liệu trừu tượng Database Abstraction Layer (DAL), cựng với một số API liờn kết cỏc đối tượng và thể hiện chỳng vào trong cơ sở dữ liệu dưới dạng cỏc bảng và bản ghi.

Web2py cung cấp cỏc API để cú thể làm việc với rất nhiều hệ quản trị cơ sở dữ liệu như SQLite, MySQL, Oracle, MSSQL, DB2, …v…v Trong phiờn bản dành cho windows thỡ web2py đó tớch hợp một hệ quản trị cơ sở dữ liệu SQLite, chỳng ta cú thể sử dụng nú ngay trờn trỡnh duyệt của mỏy tớnh mỡnh. Trong tài liệu về đồ ỏn tốt nghiệp thỡ em chỉ trỡnh bày về cỏch thức làm việc với SQLite trờn framework web2py.

2.1.4.1. Khai bỏo cơ sở dữ liệu:

Chỳng ta khai bỏo cơ sở dữ liệu bằng cõu lệnh: Db = DAL(‘sqlite://storage.db’)

MySQL mysql://username:password@localhost/test PostgreSQL postgres://username:password@localhost/test MSSQL mssql://username:password@localhost/test FireBird firebird://username:password@localhost/test Oracle oracle://username/password@test DB2 db2://username:password@test Ingres ingres://username:password@localhost/test Informix informix://username:password@test 2.1.4.2. Cỏc kiểu dữ liệu:

String IS_LENGTH(length) default length is 512

Text IS_LENGTH(65536)

Blob None

Boolean None

Integer IS_INT_IN_RANGE(-1e100, 1e100)

Double IS_FLOAT_IN_RANGE(-1e100, 1e100)

decimal(n,m) IS_DECIMAL_IN_RANGE(-1e100, 1e100)

date IS_DATE()timeIS_TIME() datetime IS_DATETIME() password None upload None reference <table>IS_IN_DB(db,'<table>.id') list:string None list:integer None

 Khi làm việc với bảng thỡ web2py cung cấp cỏc phương thức:

o Insert: dựng để thờm một bản ghi Vớ dụ: thờm một bản ghi mới Db.mytable.insert(‘value’)

o Delete: dựng để xúa dữ liệu Vớ dụ: xúa bản ghi cú id = 5 Db(db.mytable.id ==5).delete()

o Update: dựng để sửa dữ liệu Vớ dụ: sửa bản ghi cú id = 5

Db(db.mytable.id ==5).update(myfield=’new value’)

o Truncate: Dựng để xúa hết dữ liệu trong bảng Vớ dụ: xúa hết dữ liệu trong bảng mytable Db.mytable.truncate()

o Drop: Dựng để xúa bảng Vớ dụ: xúa bảng mytable Db.mytable.drop()

o Và đặc biệt là phương thức import_from_csv_file dựng để import dữ liệu từ bờn ngoài vào cơ sở dữ liệu thụng qua cỏc file

3.1. Thiết kế

Một phần của tài liệu Xây dựng website tin tức và module lấy tin bài tự động luận văn tốt nghiệp đại học (Trang 33 - 38)