Risposte:
Ciò corrisponde al lungo (o Int64 ), un numero intero a 64 bit.
Anche se il numero dal database sembra essere abbastanza piccolo, e accidentalmente usi un Int32, ecc., Starai bene. Ma Int64 lo terrà sicuramente.
E l'errore che si ottiene se si utilizza qualcosa di più piccolo e sono necessarie le dimensioni complete? Un overflow dello stack! Sìì!
long
non è maiuscolo.
Ho appena avuto uno script che ha restituito la chiave primaria di un inserto e utilizzato un
SELECT @@identity
sulla mia chiave primaria bigint e ricevo un errore cast usando long - ecco perché ho iniziato questa ricerca. La risposta corretta almeno nel mio caso è che il tipo restituito da quella selezione è NUMERIC che equivale a un tipo decimale. L'uso di un long provocherà un'eccezione di cast.
Questo è un motivo per controllare le tue risposte in più di una ricerca su Google (o anche su Stack Overflow!).
Per citare un amministratore di database che mi ha aiutato:
... BigInt non è uguale a INT64, non importa quanto si assomiglino. Parte del motivo è che SQL convertirà spesso Int / BigInt in Numerico come parte dell'elaborazione normale. Pertanto, quando si passa a OLE o .NET, la conversione richiesta è NUMERICA in INT.
Spesso non ci accorgiamo poiché il valore stampato sembra lo stesso. "
Usa un tipo di dati lungo.
Puoi usare il long
tipo oInt64
Penso che l'equivalente sia Int64
int nelle mappe sql direttamente a int32 noto anche come tipo primitivo cioè int in C # considerando
bigint in SQL Server si associa direttamente a int64 noto anche come un tipo primitivo cioè lungo in C #
Una conversione esplicita se biginteger in intero è stato definito qui
Per la maggior parte dei casi è lungo (int64) in c #