Sviluppo per Pocket PC con SQL Server CE 2.0 Fabio Santini Silvano Coriani .NET Developer Evangelist Microsoft Corporation Agenda Introduzione Architettura Funzionalià ADO.NET Accesso diretto a SQL Server Replica dei database Accesso remoto Licenza SQL CE 3.0 Introduzione SQL Server CE Scenari di utilizzo Database disconnessi Connettività Internet / Intranet e sincronizzazione Differente da applicazioni Mobile Web Forms, uso dei Data Set ADO.NET Data Set e MSMQ CE Supporto codice nativo e codice gestito Applicazioni verticali Sanità, Forza vendita, Manutentori,etc. Architettura SQL Server CE v2.0 .NET Compact Framework Codice nativo VS .NET (VB.NET, C#) eVB 3.0 ADO CE v3.1 ADO.NET eVC 3.0 SQL Server CE 2.0 Data Provider CLR / .NET CF OLEDB CE SQL Server CE v2.0 OLEDB QP/Cursor Engine/ES OLEDB Storage Engine / Repl Tracking Windows CE Accesso ai dati Enterprise Backend Oracle / db2 / etc .NET CF / Managed Stack Native/Unmanaged Stack eVB 3.0 ADO CE v3.1 ADO.NET eVC 3.0 XML/BizTalk VS .NET (VB.NET, C#) SQL Server CE Data Provider SQL Server Client Data Provider CLR / .NET CF Ethernet TDS Connesione continua OLEDB CE SQL CE Edition v2.0 Data Provider OLEDB QP/Cursor Engine/ES OLEDB Client Agent: Replication and RDA Storage Engine / Repl Tracking 802.11b, CDPD, GSM, CDMA, TDMA, etc. IIS HTTP Connessione occasionale CLIENT SERVER OLEDB / Replication API Server Agent: Replication and Remote Data Access Connettività Utilizza tecnologia web Comunicazione HTTP Sicurezza tramite IIS Internet and Intranet Autenticazione (anonymous, basic, NTLM) Autorizzazioni Encryption (SSL) Accesso tramite firewall Accesso ai dati Mobile Browser WAP, HTML etc. ASP.NET, Mobile Controls Presentation Layer 1. Web service .NET Compact Framework 4. ADO.NET Local Data Web Service 3. Direct SQL Server access SQL Server CE SQL Server 2. Synchronization (http) Windows CE Windows Server Funzionalità database Indici multi colonna Integrità referenziale SELECT IN Defaults Inner/outer joins Un file per ogni database Supporto di Null Supporto Unicode Transazioni Nuove funzionalità della versione 2.0 Union Funzioni (CASE, @IDENTITY) Query parametriche Recupero degli indici via RDA Pull Connectivity Setup Wizards INSERT INTO mytable (col1, col2) VALUES (?, ?); Index Pull SELECT * FROM A UNION SELECT * FROM B Installazione semplificata delle componenti SQL CE ISQLWCE ISQLW CE Accesso diretto a SQL Server Accesso a SQL CE Remote Data Access Accesso a SQL Server 7.0 e SQL Server 2000 Download sul dispositivo per un utilizzo disconnesso Traking delle modifiche Semplice da impostare e utilizzare Soluzione scalabile Remote Data Access Replica SQL Server 2000 features crucial for SQL Server CE: Vertical and horizontal partitioning Dynamic horizontal filters Auto ranged identity columns Standard/custom conflict resolvers Replica SQL Server 2000 – SQL CE 2.0 Licenza SQL Server CE 2.0 Licenza CAL/CPU necessaria per la connettività verso SQL Server Distribuzione gratuita sui dispositivi Funzionalità di Laguna Storage Engine Supporto Multiutenza Improved stability Lock di riga Lock di pagina Lock Escalation Supporto transazioni ACID Riutilizzo delle pagine vuote Riduzione delle compattazioni Funzionalità Laguna QP Showplan Supporto degli Istogram per l’incremento della velocità delle query Cursore aggiornabile - SQLCECursor Parametri nominali Funzionalità Laguna - Tools Integrazione con SQL Workbench La stessa interfaccia utilizzata per connettersi a SQL Server o a SQL Server CE Interfaccia del Workbench La maggior parte delle differenze sono la disabilitazione di opzioni non presenti in SQL Server CE Funzionalità Integrazione con Whidbey Object Explorer Editor di Query Dialog per la gestione del database Data designer in Whidbey Supporto per i DTS