[MySQL]Quale datatype scegliere?

martedì 04 marzo 2008 - 12.53

Hope Profilo | Junior Member

Salve,
Ho uno script che importa dei dati all'interno di una tabella.
Tra i dati che importa c'è quello relativo alla ram dove la relativa colonna è impostata come datatype BIGINT(20).
Siccome il campo RAM è solo un numero ho voluto modificare lo script aggiungendo dei caratteri( prima importavo solo 1 ora 1Gb).
Il problema è questo se importo solo con il campo numerico funziona (1) se invece importo alfanumerico non funziona (1Gb).
Ho cambiato il datatype della colonna RAM in VARCHAR,ma ho sempre lo stesso problema,tutti i cambiamenti l'ho fatti tramite MySql Administrator.

Avete qualche consiglio?dove sbaglio?
grazie a tutti...

Saluti

alx_81 Profilo | Guru

>Salve,
Ciao!

>Ho cambiato il datatype della colonna RAM in VARCHAR,ma ho sempre
>lo stesso problema,tutti i cambiamenti l'ho fatti tramite MySql
>Administrator.
Non conosco bene MySql, ma in linea di massima ti do un consiglio in generale. I caratteri relativi alla natura dell'informazione numerica (vedi le unità di misura) sono a mio avviso da considerare solo nella fase di presentazione del dato.
Questo soprattutto perchè potresti aver bisogno di sommare la quantità di RAM ad esempio (pensa se solamente devi dire il totale di ram per un pc e la sua suddivisione fisica) o di effettuare operazioni/aggregazioni.
Per questo, preferisco utilizzare un numerico (in sql server userei smallint definendo l'unità di misura standard con cui salvare il dato, in questo caso MB) e poi gestire la visualizzazione dell'unità di misura.

>grazie a tutti...
di nulla!
Alx81 =)

http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

Hope Profilo | Junior Member

Grazie Alex,
Non ho ben capito però come posso far valorizzare il campo in Mb o Gb
Praticamente mi stai dicendo di lasciare il campo numerico ed aggiungere una colonna con l'unità di misura?
In questo modo non saprei proprio dove mettere le mani,ecco perchè cercavo una via più semplice....


Saluti

alx_81 Profilo | Guru

>Grazie Alex,
>Non ho ben capito però come posso far valorizzare il campo in
>Mb o Gb
Questa è proprio una scelta tua in fase di design. Scegli l'unità di misura e la grandezza e tutti i dati saranno salvati e considerati in quel modo, deciso a priori.

>Praticamente mi stai dicendo di lasciare il campo numerico ed
>aggiungere una colonna con l'unità di misura?
no, l'unità di misura la scegli a priori.
Se vuoi dare unità di misura variabili, puoi pensare di aggiungere la colonna che dici per definirla.. vedi tu..

>In questo modo non saprei proprio dove mettere le mani,ecco perchè
>cercavo una via più semplice....
secondo me la via più semplice è definirla a priori, tipo "SALVO I DATI IN MEGABYTES". E poi pensi a come presentarli lato applicativo.

Alx81 =)

http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

Hope Profilo | Junior Member

Ho capito...
grazie
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