Tabella con 2 chiavi (prestazioni nelle select)

domenica 23 aprile 2006 - 09.22

Amodio Profilo | Expert

salve a tutti
dovrei create una tabella in sqlserver, dove ragionando logicamente i campi immesso hanno un codicefiscale,data e codiceTransazione univocuo, sarebbe quindi logico mettere una tabella con 3 chiavi...cioè l'unione di Codicefiscale,data e CodiceTransazione

ma proprio su questo punto ho avuto un dubbio
ebbene,si sa benissimo che facendo le select in un database, piu aumentano le "AND" e piu' si è a rischio rallentamenti
secondo voi potrei benissimo mettere un campo contatore e fare in modo di filtrare i dati per un unico campo?

questo dubbio mi è pervenuto leggendo i suggerimenti microsoft sui database

qualche spiegazione?
grazie

paolopat Profilo | Junior Member

per quanto mi riguarda, quando progetto le basi di dati nelle mie applicazioni, preferisco sempre aggiungere una chiave costituita da un id univoco (campo contatore) anche se l'entità presenta degli attributi che possono fungere da chiave primaria (tipo codice fiscale)...secondo me è la soluzione migliore.

trinity Profilo | Guru

Sql Server ha delle prestazioni notevoli e quindi non dovresti avere dei problemi a riguardo; ovviamente utilizzi l'inner join in questa select? Comunque la scelta del contatore dipendere dal fatto se ti possano capitare dei record le cui chivi primarie potrebbero essere uguali a questo punot di solito viene inserito un contatore tipo auto-increment definito chiave primaria in modo tale da non incappare della duplicazione dei record. La logica strutturale del database deve avvenire in base alle esigenze che il prodotto o la clientela ti richiede..
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5