Bài này vừa phân loại ngôn ngữ lập trình, vừa phân loại công nghệ liên quan đến nó trong việc phát triển ứng dụng web.
I. Ngôn ngữ lập trình và công nghệ phía client
1. HTML
HTML
(tiếng Anh, viết tắt cho HyperText Markup Language, hay là “Ngôn ngữ
Đánh dấu Siêu văn bản”) là một ngôn ngữ đánh dấu được thiết kế ra để tạo
nên các trang web với các mẩu thông tin được trình bày trên World Wide
Web. HTML được định nghĩa như là một ứng dụng đơn giản của SGML và được
sử dụng trong các tổ chức cần đến các yêu cầu xuất bản phức tạp. HTML đã
trở thành một chuẩn Internet do tổ chức World Wide Web Consortium (W3C)
duy trì. Phiên bản chính thức mới nhất của HTML là HTML 4.01 (1999).
Sau đó, các nhà phát triển đã thay thế nó bằng XHTML. Hiện nay, HTML
đang được phát triển tiếp với phiên bản HTML5 hứa hẹn mang lại diện mạo
mới cho Web.
2. CSS
Là
tập tin định dạng theo tầng – dịch từ Tiếng Anh là Cascading Style
Sheets (CSS) – được dùng để miêu tả cách trình bày các tài liệu viết
bằng ngôn ngữ HTML và XHTML. Ngoài ra ngôn ngữ định kiểu theo tầng cũng
có thể dùng cho XML, SGV, XUL… Các đặc điểm kỹ thuật của CSS được duy
trì bởi World Wide Web Consortium (W3C)
3. JavaScript
JavaScript,
theo phiên bản hiện hành, là một ngôn ngữ lập trình kịch bản dựa trên
đối tượng được phát triển từ các ý niệm nguyên mẫu. Ngôn ngữ này được
dùng rộng rãi cho các trang web, nhưng cũng được dùng để tạo khả năng
viết script sử dụng các đối tượng nằm sẵn trong các ứng dụng. Nó vốn
được phát triển bởi Brendan Eich tại Hãng truyền thông Netscape với cái
tên đầu tiên Mocha, rồi sau đó đổi tên thành LiveScript, và cuối cùng
thành JavaScript. Giống Java, JavaScript có cú pháp tương tự C, nhưng nó
gần với Self hơn Java. .js là phần mở rộng thường được dùng cho tập tin
mã nguồn JavaScript. Phiên bản mới nhất của JavaScript là phiên bản
1.5, tương ứng với ECMA-262 bản 3. ECMAScript là phiên bản chuẩn hóa của
JavaScript. Trình duyệt Mozilla phiên bản 1.8 beta 1 có hỗ trợ không
đầy đủ cho E4X – phần mở rộng cho JavaScript hỗ trợ làm việc với XML,
được chuẩn hóa trong ECMA-357.
4. Ajax
AJAX
(tiếng Anh: “Asynchronous JavaScript and XML” – nghĩa là “JavaScript và
XML không đồng bộ”) là một nhóm các công nghệ phát triển web được sử
dụng để tạo các ứng dụng web động hay các ứng dụng giàu tính Internet
(rich Internet application). Từ Ajax được ông Jesse James Garrett đưa ra
và dùng lần đầu tiên vào tháng 2 nãm 2005 để chỉ kỹ thuật này, mặc dù
các hỗ trợ cho Ajax đã có trên các chương trình duyệt từ 10 nãm trước.
Ajax là một kỹ thuật phát triển web có tính tương tác cao bằng cách kết
hợp các ngôn ngữ: HTML (hoặc XHTML) với CSS trong việc hiển thị thông
tin Mô hình DOM (Document Object Model), được thực hiện thông qua
JavaScript, nhằm hiển thị thông tin động và tương tác với những thông
tin được hiển thị Đối tượng XMLHttpRequest để trao đổi dữ liệu một cách
không đồng bộ với máy chủ web. (Mặc dù, việc trao đổi này có thể được
thực hiện với nhiều định dạng như HTML, văn bản thường, JSON và thậm chí
EBML, nhưng XML là ngôn ngữ thường được sử dụng). XML thường là định
dạng cho dữ liệu truyền, mặc dầu bất cứ định dạng nào cũng có thể dùng,
bao gồm HTML định dạng trước, văn bản thuần (plain text), JSON và ngay
cả EBML. Giống như DHTML, LAMP hay SPA, Ajax tự nó không phải là một
công nghệ mà là một thuật ngữ mô tả việc sử dụng kết hợp một nhóm nhiều
công nghệ với nhau.
5. Flash
Adobe
Flash (trước đây là Macromedia Flash và trước đó FutureSplash), hay còn
gọi một cách đơn giản là Flash, được dùng để chỉ chương trình sáng tạo
đa phương tiện (multimedia) lẫn phần mềm dùng để hiển thị chúng
Macromedia Flash Player.[1] Chương trình điện toán này được viết và phân
phối bởi Adobe Systems (công ty đã mua Macromedia). Flash dùng kỹ thuật
đồ họa vectơ và đồ họa điểm (raster graphics). Ngoài ra Flash còn có
một ngôn ngữ văn lệnh riêng gọi là ActionScript và có khả năng truyền và
tải luồng âm thanh hoặc hình ảnh. Đúng ra thì từ Macromedia Flash nên
được dùng để chỉ chương trình tạo ra các tập tin Flash. Còn từ Flash
Player nên được dành để chỉ ứng dụng có nhiệm vụ thi hành hay hiển thị
các tập tin Flash đó. Tuy vậy, chữ Flash được dùng để chỉ cả hai chương
trình nói trên.
6. JQuery
JQuery
là thư viện JavaScript đa trình duyệt được thiết kế để đơn giản hóa lập
trình phía máy người dùng của HTML Được phát hành vào tháng 1 năm 2006
tại BarCamp NYC bởi John Resig. Được sử dụng bởi hơn 52% trong 10.000
website được truy cập nhiều nhất, jQuery là thư viện JavaScript được sử
dụng phổ biến nhất hiện nay
7. Microsoft Silverlight
Microsoft
Silverlight là một nền tảng ứng dụng (application framework) để viết và
chạy các ứng dụng Internet phong phú với sự nhấn mạnh về đa phương
tiện, hình động, và đồ họa, với các tính năng và mục đích tương tự như
của Adobe Flash. Môi trường thời gian chạy (hệ thống thực thi) cho
Silverlight có sẵn như là một plug-in cho hầu hết các trình duyệt web.
Trong khi những phiên bản đầu của Silverlight tập trung vào dòng phương
tiện truyền thông (streaming media), các phiên bản hiện tại hỗ trợ đa
phương tiện, đồ họa và hoạt hình (animation), và cung cấp cho các nhà
phát triển hỗ trợ cho ngôn ngữ CLI và công cụ phát triển. Phiên bản hiện
tại 4 được phát hành vào tháng 4 năm 2010. Nó tương thích với nhiều
trình duyệt web được sử dụng trên hệ điều hành Microsoft Windows và Mac
OS X. Các thiết bị di động, bắt đầu với điện thoại Windows Phone 7 và
Symbian (seri 60), có khả năng được hỗ trợ trong năm 2010. Một phần mềm
miễn phí thêm vào có tên là Moonlight, phát triển bởi Novell trong sự
hợp tác với Microsoft, có sẵn để mang lại Silverlight chức năng tương
thích với Linux, FreeBSD và nền tảng mã nguồn mở khác.
II. Ngôn ngữ lập trình và công nghệ phía server
1. ASP
Microsoft
Active Server Pages (ASP) là một môi trường sever-side scripting cho
phép ta tạo ra và chạy các ứng dụng Web động, tương tác với client một
cách hiệu quả. ASP hoạt động dựa vào các script do người lập trình tạo
sẵn. Khi ta cho script chạy trên server thay vì chạy ở client thì Web
server của ta sẽ làm mọi công việc cần thiết để tạo ra một trang
Hypertext Markup Language (HTML) trả về cho Browser hiển thị, như vậy ta
không phải bận tâm rằng các Web browser có thể xử lý trang Web hay
không vì server đã làm mọi việc.
2. CSP – Server-Side ANSI C
ANSI
C là chuẩn C do tổ chức ANSI (Mỹ) đặt ra, mục đích là để chuẩn hóa ngôn
ngữ C. Một điểm mạnh của quá trình tiêu chuẩn hoá ANSI C là làm cho
K&R C trở thành một tập con của nó; nó tiếp nhận nhiều chức năng
không chính thức của K&R C như là một hệ quả. Xa hơn, hội đồng tiêu
chuẩn cũng làm cho ANSI C bao gồm thêm nhiều chức năng mới, như là các
nguyên mẫu của hàm (mượn từ C++), và khả năng tiền xử lý mạnh hơn. Ngày
nay, ANSI C được hỗ trợ bởi hầu hết các trình dịch. Hầu hết các mã C
ngày nay được viết dựa ttrên ANSI C. Mọi chương trình chỉ viết trong
chuẩn C thì sẽ đảm bảo việc thực thi chính xác trên mọi nền nào cho phép
dùng C.
3. ColdFusion
ColdFusion
là 1 nền tảng phát triển ứng dụng web thương mại được phát minh bởi
Jeremy và JJ Allaire vào năm 1995, mục đích để làm cho việc kết nối HTML
tới database được dễ dàng hơn. Tới phiên bản 2 (1996), nó trở thành 1
ngôn ngữ kịch bản hoàn thiện, chứa cả IDE riêng.
4. CGI
Common
Gateway Interface, CGI là phần mở rộng của máy phục vụ dùng để mở rộng
khả năng của các máy dịch vụ Web. Bạn điền vào các phần mở rộng đó để
làm trang Web của bạn sống động và hấp dẫn hơn. Thay vì đưa ra một trang
Web tĩnh cũ kỹ, CGI (và các phần mở rộng máy phục vụ khác) cung cấp một
phương pháp để các máy khách Web yêu cầu thông tin từ các máy phục vụ
Web. Người dùng điền vào một biểu mẫu sẽ gởi tới máy phục vụ để máy phục
vụ để máy phục vụ trả lời với những thông tin động tùy thuộc vào thông
tin trên biểu mẫu đó. Máy phục vụ đó có thể tương tác với một máy phục
vụ cơ sở dữ liệu phụ dịch ( back-end database server) hay lấy thông tin
từ một nguồn khác. Hệ giao tiếp CGI là giao thức cung cấp một hệ giao
tiếp hai chiều giữa các máy khách Web và các máy phục vụ Web và bản CGI
là một tập hợp lệnh quyết định những gì xảy ra khi chúng giao tiếp. CGI
được phát minh để mở rộng giao thức HTTP.
5. Groovy (programming language) Grails (framework)
Groovy
là một ngôn ngữ lập trình hướng đối tượng trên nền Java. Nó là một ngôn
ngữ lập trình động với các tính năng tương tự như Python, Ruby, Perl,
và Smalltalk. Hơn nữa, nó cũng có thể được sử dụng như là một ngôn ngữ
kịch bản chạy trên nền máy ảo Java. Goovy sử dụng cú pháp gần giống với
Java nhưng nó không sử dụng dấu chấm phẩy ở cuối mỗi dòng, và nó được tự
động dịch sang bytecode và chạy trên máy ảo Java (Java Virtual
Machine).
6. Perl
Perl
(viết tắt của Practical Extraction and Report Language – ngôn ngữ kết
xuất và báo cáo thực dụng) được Larry Wall xây dựng từ năm 1987, với mục
đích chính là tạo ra một ngôn ngữ lập trình có khả năng chắt lọc một
lượng lớn dữ liệu và cho phép xử lí dữ liệu nhằm thu được kết quả cần
tìm. Perl là ngôn ngữ thông dụng trong lĩnh vực quản trị hệ thống và xử
lí các trang Web do có các ưu điểm sau: Có các thao tác quản lí tập tin,
xử lí thông tin thuận tiện Thao tác với chuỗi kí tự rất tốt Đã có một
thư viện mã lệnh lớn do cộng đồng sử dụng Perl đóng góp (CPAN). Cú pháp
lệnh của Perl khá giống với C, từ các kí hiệu đến tên các hàm, do đó,
nhiều người (đã có kinh nghiệm với C) thấy Perl dễ học. Perl khá linh
hoạt và cho phép người sử dụng giải quyết với cùng một vấn đề được đặt
ra theo nhiều cách khác nhau.
7. PHP
PHP
(viết tắt hồi quy “PHP: Hypertext Preprocessor”) là một ngôn ngữ lập
trình kịch bản hay một loại mã lệnh chủ yếu được dùng để phát triển các
ứng dụng viết cho máy chủ, mã nguồn mở, dùng cho mục đích tổng quát. Nó
rất thích hợp với web và có thể dễ dàng nhúng vào trang HTML. Do được
tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, cú pháp giống C
và Java, dễ học và thời gian xây dựng sản phẩm tương đối ngắn hơn so với
các ngôn ngữ khác nên PHP đã nhanh chóng trở thành một ngôn ngữ lập
trình web phổ biến nhất thế giới.
8. Python
Python
là một ngôn ngữ lập trình thông dịch do Guido van Rossum tạo ra năm
1990. Python hoàn toàn tạo kiểu động và dùng cơ chế cấp phát bộ nhớ tự
động; do vậy nó tương tự như Perl, Ruby, Scheme, Smalltalk, và Tcl.
Python được phát triển trong một dự án mã mở, do tổ chức phi lợi nhuận
Python Software Foundation quản lý. Python là ngôn ngữ có hình thức rất
sáng sủa, cấu trúc rõ ràng, thuận tiện cho người mới học lập trình. Cấu
trúc của Python còn cho phép người sử dụng viết mã lệnh với số lần gõ
phím tối thiểu. Ban đầu, Python được phát triển để chạy trên nền Unix.
Nhưng rồi theo thời gian, nó đã “bành trướng” sang mọi hệ điều hành từ
MS-DOS đến Mac OS, OS/2, Windows, Linux và các hệ điều hành khác thuộc
họ Unix. Mặc dù sự phát triển của Python có sự đóng góp của rất nhiều cá
nhân, nhưng Guido van Rossum hiện nay vẫn là tác giả chủ yếu của
Python. Ông giữ vai trò chủ chốt trong việc quyết định hướng phát triển
của Python.
9. Ruby
Ruby
là một ngôn ngữ lập trình hướng đối tượng, có khả năng reflection. Cú
pháp bị ảnh hưởng từ Ada và Perl với các đặc tính hướng đối tượng của
Smalltalk, và cũng chia sẻ một số đặc tính với Python, Lisp, Dylan và
CLU. Ruby là ngôn ngữ thông dịch đơn giai đoạn. Ruby cung cấp nhiều mẫu
hình lập trình, bao gồm lập trình hàm, hướng đối tượng, mệnh lệnh, phản
xạ. Nó sử dụng hệ thống kiểu biến động và tự động quản lý bộ nhớ,
10. Smalltalk
Smalltalk
là ngôn ngữ lập trình hướng đối tượng, kiểu dữ liệu động, và có tính
phản xạ. Smalltalk được thiết kế nhằm bảo vệ tối đa các đặc điểm ngắn
gọn và trong sáng của nó và không hướng đến tính khả dụng (usability)
hay tính hiệu năng (performance). Vì vậy nó phù hợp với các mục đích
giáo dục hơn là mục đích thương mại, tuy nhiên các đặc điểm của
Smalltalk đã ảnh hưởng và góp phần mang lại thành công cho nhiều ngôn
ngữ khác trong đó có Java, C#. Ngôn ngữ Smalltalk được phát triển bởi
nhiều tác giả qua nhiều thời kỳ khác nhau các tác giả chính bao gồm Alan
Kay, Dan Ingalls, Adele Goldberg, Ted Kaehler, Scott Wallace. Smalltalk
thường được nhắc đến như là tiêu chuẩn ngôn ngữ lập trình, không phải
là một trình biên dịch cụ thể. Đã có nhiều trình biên dịch khác nhau sử
dụng ngôn ngữ Smalltalk như Smalltalk-80, VisualAge Smalltalk… Tiêu
chuẩn được biết đến nhiều là ANSI Smalltalk được phê chuẩn vào năm
1998.
11. SSJS (Server-side JavaScript)
Server-side
JavaScript tức là JavaScript chạy ở phía server và không được load về
trình duyệt. Sản phẩm đầu tiên của SSJS là hệ thống LiveWire của
Netscape, được giới thiệu lần đầu vào năm 1996. Từ đó, nhiều công ty
khác cũng bắt đầu liên tiếp đưa ra các công nghệ xử lý phía server. Một
trong số đó là Microsoft với sự hỗ trợ sử dụng JavaScript trên server mà
ngày nay được biết đến như một loại ngôn ngữ ASP cổ điển. Song song với
ngôn ngữ VBScript, hỗ trợ JavaScript và PerlScript. Thực tế, Microsoft
dùng JScript – một phiên bản tự sáng tạo của JavaScript.
12. WebDNA
WebDNA
là một ngôn ngữ kịch bản thông dịch phía server với một hệ cơ sở dữ
liệu nhúng được thiết kế đặc biệt cho World Wide Web, được phát hành
dưới dạng freeware. Nó được sử dụng chủ yếu trong việc tạo ra các ứng
dụng trang web động dựa theo cơ sở dữ liệu
13. .NET và .NET Framework
.NET
Framework của Microsoft là một nền tảng lập trình tập hợp các thư viện
lập trình có thể được cài thêm hoặc đã có sẵn trong các hệ điều hành
Windows. Nó cung cấp những giải pháp thiết yếu cho những yêu cầu thông
thường của các chương trình điện toán như lập trình giao diện người
dùng, truy cập dữ liệu, kết nối cơ sở dữ liệu, ứng dụng web, các giải
thuật số học và giao tiếp mạng. Ngoài ra, .NET Framework quản lý việc
thực thi các chương trình được viết dựa trên .NET Framework do đó người
dùng cần phải cài .NET Framework để có thể chạy các chương trình được
viết trên nền .NET.
14. Java
Java
là một ngôn ngữ lập trình dạng lập trình hướng đối tượng (OOP). Khác
với phần lớn ngôn ngữ lập trình thông thường, thay vì biên dịch mã nguồn
thành mã máy hoặc thông dịch mã nguồn khi chạy, Java được thiết kế để
biên dịch mã nguồn thành bytecode, bytecode sau đó sẽ được môi trường
thực thi (runtime environment) chạy. Bằng cách này, Java thường chạy
chậm hơn những ngôn ngữ lập trình thông dịch khác như C++, Python, Perl,
PHP, C#… Cú pháp Java được vay mượn nhiều từ C & C++ nhưng có cú
pháp hướng đối tượng đơn giản hơn và ít tính năng xử lý cấp thấp hơn. Do
đó việc viết một chương trình bằng Java dễ hơn, đơn giản hơn, đỡ tốn
công sửa lỗi hơn. Dùng bộ thư viện chuẩn KFC, nhiều đoạn code Java chỉ
mất vài dòng trong khi C phải mất cả trang giấy.
III. Client + Server
1. Opa
Opa
là 1 ngôn ngữ lập trình nguồn mở dành cho việc phát triển ứng dụng web
của các hệ thống có tính linh động, phát triển mạnh theo số lượng người
dùng. Nó có thể sử dụng cho cả phía client và phía server, nơi mà phần
mềm hoàn chỉnh được viết bằng Opa sau đó được dịch thành mã máy trên
server và javascript trên client, với bộ dịch tự động giao tiếp giữa 2
bên.
2. Pyramas
Pyramas
là một công cụ và nền tảng cho việc phát triển ứng dụng Ajax trên
Python, nó bao gồm 1 bộ dịch Python – JavaScript riêng biệt, 1 nền tảng
Ajax và 1 bộ công cụ giao diện, với tất cả những thành phần này, các nhà
phát triển có thể viết ra các ứng dụng hoàn thiện, chạy được trên tất
cả các trình duyệt phổ biến mà không cần phải viết lại 1 dòng JavaScript
nào.
3. Tersus
Tersus
là 1 nền tảng phát triển phần mềm trực quan để tạo ra các ứng dụng web
phong phú với các đồ thị, hình vẽ thay vì những dòng code. Tersus đồng
thời cũng là một ngôn ngữ mô hình hóa trực quan để xác định giao diện
người dùng, các thói quen của người dùng phía client và xử lý ở phía
server.
IV. Database
1. Apache Derby
Apache
derby là một hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi
Apache Software Foundation, có thể nhúng trong các chương trình Java và
sử dụng để xử lý giao dịch trực tuyến.
2. IBM DB2
DB2
là một trong các dòng phần mềm quản trị cơ sở dữ liệu quan hệ của IBM
(RDBMS : relational Database Management System). Có nhiều phiên bản khác
nhau của DB2 để chạy trên các loại máy tính từ thiết bị cầm tay đến các
máy tính lớn (mainframe). Ở những Công ty nhỏ thường gặp nhất là phiên
bản DB2 Enterprise Server Edition hoặc DB2 Data Warehouse Edition (DB2
DWE), chạy trên các máy chủ Unix, Windows hoặc Linux. Tuy nhiên khi nói
đến DB2, phần đông người ta đều nghĩ đến DB2 for Z/OS, phiên bản DB2
nguyên thủy chạy trên máy mainframe IBM được phát hành từ năm 1982. Trên
các máy nhỏ phần đông người ta sử dụng RDBMS Oracle vì DB2 chỉ xuất
hiện trên máy nhỏ cuối thập niên 1990. DB2 sử dụng ngôn ngữ SQL đễ đọc
và viết thông tin vào dữ liệu. IBM DB2 Enterprise Server Edition là một
hệ quản trị cơ sở dữ liệu quan hệ được phát triển bởi IBM. DB2 được dùng
chủ yếu trên Unix (thường gọi AIX), Linux, IBM i (trước đây là OS/400),
z/OS and Windows servers. DB2 cũng hỗ trợ đắc lực IBM InfoSphere
Warehouse khác. Song song với DB2 là một hệ quản trị cơ sở dữ liệu quan
hệ khác: Informix, được IBM phát hành năm 2001.
3. Firebird
Firebird
là một hệ quản trị cơ sở dữ liệu quan hệ SQL mã nguồn mở, chạy trên
Linux, Windows và một số biến thể của Unix. Mới đầu thì Firebird được
cải tiến từ 1 phiên bản nguồn mở của InterBase vào năm 2000, nhưng sau
phiên bản 1.5 trở đi, mã nguồn của Firebird đã được viết lại phần lớn.
4. Microsoft SQL Server
SQL
Server là một hệ thống quản lý cơ sở dữ liệu (Relational Database
Management System (RDBMS) ) sử dụng Transact-SQL để trao đổi dữ liệu
giữa Client computer và SQL Server computer. Một RDBMS bao gồm
databases, database engine và các ứng dụng dùng để quản lý dữ liệu và
các bộ phận khác nhau trong RDBMS. SQL Server được tối ưu để có thể chạy
trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment)
lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL
Server 2000 có thể kết hợp “ăn ý” với các server khác như Microsoft
Internet Information Server (IIS), E-Commerce Server, Proxy Server….
5. MySQL
MySQL
là hệ quản trị cơ sở dữ liệu mã nguồn mở phổ biến nhất thế giới và được
các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng.
Vì MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử dụng, có tính khả
chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các
hàm tiện ích rất mạnh.Với tốc độ và tính bảo mật cao, MySQL rất thích
hợp cho các ứng dụng có truy cập CSDL trên internet. MySQL miễn phí hoàn
toàn cho nên bạn có thể tải về MySQL từ trang chủ. Nó có nhiều phiên
bản cho các hệ điều hành khác nhau: phiên bản Win32 cho các hệ điều hành
dòng Windows, Linux, Mac OS X, Unix, FreeBSD, NetBSD, Novell NetWare,
SGI Irix, Solaris, SunOS, …
6. Oracle Database
Oracle Database là một hệ quản trị csdl quan hệ liên kết đối tượng, được sản xuất và thương mại hóa bới Oracle.
7. PostgreSQL
PostgreSQL
là một hệ quản trị cơ sở dữ liệu quan hệ và đối tượng dựa trên
POSTGRES, bản 4.2, được khoa điện toán của đại học California tại
Berkeley phát triển. POSTGRES mở đường cho nhiều khái niệm quan trọng mà
các hệ quản trị dữ liệu thương mại rất lâu sau mới có. PostgreSQL là
một chương trình mã nguồn mở xây dựng trên mã nguồn ban đầu của đại học
Berkeley. Nó theo chuẩn SQL99 và có nhiều đặc điểm hiện đại: – Câu truy
vấn phức hợp (complex query) – Khóa ngoại (foreign key) – Thủ tục sự
kiện (trigger) – Các khung nhìn (view) – Tính toàn vẹn của các giao dịch
(integrity transactions) – Việc kiểm tra truy cập đồng thời đa phiên
bản (multiversion concurrency control)
8. SQLite
SQLite
là hệ thống cơ sở dữ liệu quan hệ nhỏ gọn, hoàn chỉnh, có thể cài đặt
bên trong các trình ứng dụng khác. SQLite được Richard Hipp viết dưới
dạng thư viện bằng ngôn ngữ lập trình C. SQLite có các ưu điểm sau: –
Tin cậy: các hoạt động transaction (chuyển giao) nội trong cơ sở dữ liệu
được thưc hiện trọn vẹn, không gây lỗi khi xảy ra sự cố phần cứng –
Tuân theo chuẩn SQL92 (chỉ có một vài đặc điểm không hỗ trợ) – Không cần
cài đặt cấu hình – Kích thước chương trình gọn nhẹ, với cấu hình đầy đủ
chỉ không đầy 300 kB – Thực hiện các thao tác đơn giản nhanh hơn các hệ
thống cơ sở dữ liệu khách/chủ khác[1] – Không cần phần mềm phụ trợ –
Phần mềm tự do với mã nguồn mở, được chú thích rõ ràng