1 / 21

Introduzione a SQL Server 2000

Introduzione a SQL Server 2000. LSA - Laboratorio di Sistemi Informativi Economico-Aziendali. Salvatore Ruggieri Dipartimento di Informatica, Università di Pisa. SQL Server 2000:. History Riconducibile al 1987 Sybase (Aston-Tate) Versioni: personal, standard, enterprise

Download Presentation

Introduzione a SQL Server 2000

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduzione a SQL Server 2000 LSA - Laboratorio di Sistemi Informativi Economico-Aziendali Salvatore Ruggieri Dipartimento di Informatica, Università di Pisa

  2. Lab. Sistemi Informativi Economico-Aziendali SQL Server 2000: • History • Riconducibile al 1987 Sybase (Aston-Tate) • Versioni: personal, standard, enterprise • Prossima release: SQL Server codename Yukon (2a metà 2004) • Data Definition/Manipulation/Control Language • T-SQL (Transact SQL) • Tabelle, Viste, Indici, Vincoli, Regole • Trigger, Stored Procedures, User-defined functions • Tool di amministrazione • Query analyzer • Enterprise manager • Books on line • Service Manager • SQL profiler • Distributed transaction coordinator

  3. Lab. Sistemi Informativi Economico-Aziendali Query Analyser Client per definizione ed esecuzione di query SQL

  4. Lab. Sistemi Informativi Economico-Aziendali Books online Manuali strumenti, SQL, librerie

  5. Lab. Sistemi Informativi Economico-Aziendali Enterprise Manager Client di amministrazione

  6. Lab. Sistemi Informativi Economico-Aziendali Enterprise Manager • Registrazione server • autenticazione trusted e SQL Server • Database di sistema • master • login, configurazioni • model • template di database vuoto • msdb • scheduling jobs • tempdb • tabelle temporanee • Database di esempio • pubs • Northwind

  7. Lab. Sistemi Informativi Economico-Aziendali Enterprise Manager • Creazione database • file dati e log • tabelle di sistema • Creazione/modifica/eliminazione tabelle • tipi di dato • indici • visualizzazione contenuto • Creazione/modifica/eliminazione viste • Diritti • Nome completo tabella: SELECT * FROM lsa.dbo.census SELECT * FROM census SELECT * FROM lsa..census database schema tabella

  8. Accesso ai dati: SQL Server 2000, CSV, XML e altri RDBMS LSA - Laboratorio di Sistemi Informativi Economico-Aziendali Salvatore Ruggieri Dipartimento di Informatica, Università di Pisa

  9. PARTE I: IMPORT / EXPORT

  10. Lab. Sistemi Informativi Economico-Aziendali SQL Server 2000 -> CSV • Potremmo farlo usando JDBC • Utility da linea di comando: • bcp (Bulk Copy) • Export bcp “select * from census..selezione” queryout outputfile.csv –S tera.di.unipi.it –U ruggieri –c –t, • queryout, direzione dei dati da query SQL a file di output • -S <server_name> -U <user_name> • -ccodifica ASCII -w codifica UNICODE • Default: \t come separatore e \n come fine riga • oppure-t <separatore> -r<fine_riga>

  11. Lab. Sistemi Informativi Economico-Aziendali CSV -> SQL Server 2000 • Utility bcp • Import bcp census..selezione2 in inputfile.csv –S tera.di.unipi.it –U ruggieri –c –t, • Estensione SQL BULK INSERT census..Selezione2 FROM 'f:\census\selection.csv' WITH (FIELDTERMINATOR = ‘,', ROWTERMINATOR = '|\n' ) • 'f:\census\selection.csv‘ riferisce un file del server • Limiti in espressività e generalità • Formati, gestione errori, trasformazioni

  12. Lab. Sistemi Informativi Economico-Aziendali CSV, RDBMS <-> SQL Server 2000 • Soluzione generale • Enterprise Manager -> Database -> All Tasks -> Import / Export Data • Wizard di import export da/verso file di testo o altri database • Esempio di export/import verso file di testo • mapping del nome delle colonne • Esempio di export/import verso altri RDBMS • creazione delle tabelle se non esistenti

  13. Lab. Sistemi Informativi Economico-Aziendali Esercitazione: TRANSCODIFICA • Su un file Excel è presente una tabella con, tra le altre, una colonna “marital-status” (stato civile). Si vuole importare tale tabella in SQL server. • Creare una tabella SQLServer di traduzione da Inglese a Italiano dei possibili stati civili. • Aggiornare la colonna “marital-status” con la versione italiana della descrizione dello stato civile.

  14. Lab. Sistemi Informativi Economico-Aziendali SQL Server 2000 -> XML • Potremmo farlo usando JDBC • Potremmo farlo grazie allo standard di SQL/2003 che prevede costrutti per generare XML: SELECT XMLELEMENT(Name “root”, XMLAGG( XMLELEMENT(Name “emp”, name) ORDER BY name ) ) FROM employees … <root> <emp>Luigi Rossi</emp> <emp>Mario Bianchi</emp> </root> • SQL/2003 non è attualmente implementato da SQLServer, DB2, Oracle • Esistono però driver JDBC che accettano query SQL/2003 verso tali RDBMS: Data Direct

  15. Lab. Sistemi Informativi Economico-Aziendali SQL Server 2000 -> XML (ROW) • Cosa offre SQL Server 2000? • SELECT … FOR XML RAW SELECT name As nome, eta FROM employees FOR XML RAW • Produce XML in formato ROW (senza root) • colonne come attributi <row nome=“Luigi Rossi” eta=“30”/> <row nome=“Mario Bianchi” eta=“40”/>

  16. PARTE II: ACCESSO A DATI ESTERNI (senza importarli)

  17. Lab. Sistemi Informativi Economico-Aziendali Access -> SQL Server 2000 • OPENROWSET SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'D:\Corso_LSA\L2\src\Nwind.mdb';'admin';'', 'select * from clienti') • 'Microsoft.Jet.OLEDB.4.0', provider OLE DB per Access • 'D:\Corso_LSA\L2\src\Nwind.mdb';'admin';'‘, file Access con utente e password • il file risiede sul SERVER o il path è in formato UNC • 'select * from clienti' query SQL per ottenere il rowset

  18. Lab. Sistemi Informativi Economico-Aziendali ODBC -> SQL Server 2000 SELECT * FROM OPENROWSET('MSDASQL', 'FoodMart 2000';'Admin';'', 'select * from customer') • 'MSDASQL', provider OLE DB per ODBC • ‘FoodMart 2000’;'admin';'‘, DSN di sistema con utente e password • 'select * from customer' query SQL per ottenere il rowset

  19. Lab. Sistemi Informativi Economico-Aziendali ODBC -> SQL Server 2000 SELECT * FROM OPENROWSET('MSDASQL', ‘DRIVER=Microsoft Access Driver (*.mdb);UID=admin;DBQ=D:\Corso_LSA\L2\src\Nwind.mdb', 'select * from clienti') • ‘DRIVER=Microsoft Access Driver (*.mdb);UID=admin;DBQ=D:\Corso_LSA\L2\src\Nwind.mdb' stringa di connessione ODBC

  20. Lab. Sistemi Informativi Economico-Aziendali Linked Servers SQL Server accetta query SQL con riferimenti a database accessibili via OLE DB SELECT A.name, B.address FROM sales.dbo.transactions A, db2..owner.addresses B WHERE A.name = B.name

  21. Lab. Sistemi Informativi Economico-Aziendali Linked Servers

More Related