Delphi 2009 CBuilder 2009 Data Snap 2009 cbuilder
Delphi 2009 / C++Builder 2009의 Data. Snap 2009 박지훈. 임프 cbuilder 1@borlandforum. com
Database Access in Delphi/C++Builder • Desktop Applications • Client/Server Applications • Multi-Tier Applications 2
Desktop Applications • BDE Local Engine – Paradox, d. BASE, Access • Client. Data. Set –My. Base • XML UTF-8 • Binary 3
Client/Server Applications • (BDE SQL Links -> Desktop Only) • db. Express • Inter. Base Express (IBX) • db. Go for ADO 4
• • • db. Express – Benefits Short transaction life Make any rows editable Instantaneous sorting and searching Automatic summary information View subsets of data Multiple simultaneous views of data Calculated fields with no server overhead Fetch portions or rows Easier deployment, Easier driver creation
db. Express Architecture Database applications Data. Snap Provider/Resolver Reporting applications db. Express Components Driver db. Express core interface Driver Client Library Database
db. Express 2009 • 유니코드 지원 – 성능을 위해 Wide. String을 Unicode. String으로 대체함 – 유니코드 지원: Oracle, Interbase, My. SQL db. Express • 직관적인 커넥션 속성 에디터 – Custom driver properties – Support for delegate drivers • Simplified driver packaging – Separate unit and driver package for each driver
• • • Inter. Base Express (IBX) IBDatabase - connection to databases IBTransaction - separate transactions and database connections IBTable - live dataset on a table or view without SQL IBQuery - execute any SQL statement returning a result set IBData. Set - execute any SQL statement returning a result set. IBStored. Proc – execute a stored procedure that returns, at most, one row of information IBSQL – for data operations that need to be fast and lightweight. IBUpdate. SQL - update read-only datasets IBSQLMonitor - monitor the communications between application and the Inter. Base server IBDatabase. Info - retrieve info about a particular database IBEvents - register interest in, and asynchronously handle, events posted by an Inter. Base server.
db. Go for ADO • TADOConnection - connection component for an ADO data store • TRDSConnection - connection component to an ADO-based application server • TADOData. Set - dataset used for retrieving and operating on data • TADOTable - table-type dataset for retrieving and operating on a recordset • TADOQuery - query-type dataset for retrieving and operating on a recordset produced by a valid SQL statement • TADOStored. Proc - stored procedure-type dataset for executing stored procedures (may or may not retrieve data) • TADOCommand - component for executing commands (SQL statements that do not return result sets)
Multi-Tier Applications • Data. Snap (“MIDAS”) – Remote Data Module, COM based • Data. Snap 2009 – DSServer. Module/Server Method • Project Indy 11
Data. Snap 2009 • 서버/클라이언트 Delphi 컴포넌트 – 100% Object Pascal • 가벼움 – 구축이 쉽다 – COM에 의존하지 않음 • 호환성 – 기존의 Remote. Data. Module도 포함 가능 • Some migration required for any COM usage
Data. Snap 2009 • New TDSServer. Module – 기존의 IApp. Server 동기화 프로토콜 지원 (TRemote. Data. Module과 비슷) – TProvider. Data. Module에서 상속 • Server Method – Remote Method Invocation for Delphi – Simple. No IDL, just regular Delphi methods. – Public methods on any TPersistent class including TDSServer. Module and TRemote. Data. Module
Data. Snap 2009 • Clients – TSQLServer. Method 컴포넌트 • TSQLStored. Proc과 비슷 • Server Method를 stored proc처럼 사용 – Strongly typed client classes • Client proxy generator that provides strongly typed classes to call server methods – TDSProvider. Connection 컴포넌트 • TDCOMConnection, TSocket. Connection 등을 대체
Data. Snap 2009 • 서버 커넥션 – Middle-tier connectivity solution – 클라이언트 드라이버 (100% Object Pascal) – DB vendor clients installed on middle tier – Enables middle tier connection, command caching. • Easy to create new transports – ie Http(s), SSL/TLS, etc
Data. Snap Server Database Accelerator Server Methods Plain Objects Method Parameters: • Table readers • DB connection • Scalar values Delphi Remote/Server Data Modules • Middle-tier database driver deployment Existing Delphi • Connection Pooling RDMs, No-COM • Statement, Meta. Data Caching Server. Modules Delphi / C++ DBX / ADO. NET Connection/Session management and RPC dispatching. JSON/RPC messaging layer TCP/IP transport ADO. NET ASP/Desktop Delphi/C++ DBX Client
VCL for the Web • Rapid Application Development for the Web • Component suite • Multi-form applications with state management • AJAX support • Microsoft Silverlight support • Delphi and C++ Builder
VCL for the Web • Page Mode – – Similiar to ASP. NET Pages loosely coupled Create, Show, Destroy, Redirect approach No automatic session or state management • Application Mode – – – RAD for Web applications Automatic Session and State management Ajax with extensive security features Full control over Form and Module lifetime VCL for the Web‘s strength
Demo
Q&A
- Slides: 23