Well, I put this off long enough. Here is a reference for SQL Server => .NET type conversions.
I think I got it right. I'm not sure if there are any little gotchas that I'm not aware of yet..
John.
| SQL Server | Mono | SqlTypes | Notes |
|---|---|---|---|
| BINARY | => | SqlBinary | Tax 4B. Cap 1B to 8,000B. |
| BIGINT | => | SqlInt64 | Sto 8B. Rng -2^63 to 2^63 - 1. |
| BIT | => | SqlBoolean | Sto 8 fields per 1B. Rng 0 and 1. |
| CHAR | => | SqlString | Cap 1 to 8,000 char. |
| DATETIME | => | SqlDateTime | Sto 8B. Rng 1753-01-01 to 9999-12-31. Acc ~0.003 secs. |
| DECIMAL | => | SqlDecimal | Precision. Scale. Sto. Max Rng - 10^38 + 1 to 10^38 - 1 |
| FLOAT | => | SqlDouble | Mantissa. Sto. |
| IMAGE | => | SqlBinary | Variable-length binary data. Tax 16B. Cap 0B to 2^31 - 1B. |
| INT | => | SqlInt32 | Sto 4B. Rng -2^31 to 2^31 - 1. |
| MONEY | => | SqlMoney | Sto 8B. Rng -2^63 to 2^63 - 1. Acc to 0.0001. |
| NCHAR | => | SqlString | Cap 1 to 4000 nchar. |
| NTEXT | => | SqlString | Tax 16B. Cap 0 to 2^30 - 1 nchar. |
| NVARCHAR | => | SqlString | Cap 1 (allows 0) to 4,000 nchar. |
| NUMERIC | => | SqlDecimal | Fixed Precision and Scale. Same as DECIMAL. |
| REAL | => | SqlSingle | REAL is FLOAT(24). Sto 4B. |
| SMALLDATETIME | => | SqlDateTime | Sto 4B. Rng 1900-01-01 to 2079-06-06. Acc 1 minutes. |
| SMALLINT | => | SqlInt16 | Sto 2B. Rng -2^15 to 2^15 - 1. |
| SMALLMONEY | => | SqlMoney | Sto 4B. Rng -2^31 to 2^31 - 1. Acc to 0.0001. |
| SQL_VARIANT | => | varies | Models various types in a single column. See usage. |
| TEXT | => | SqlString | Tax 16B. Cap 0 to 2^31 - 1 char. |
| TIMESTAMP | => | SqlBinary(8) | Sto 8B. Used as ROWVERSION. Only one per table. |
| TINYINT | => | SqlByte | Sto 1B. Rng 0 to 255. |
| VARBINARY | => | SqlBinary | Tax 4B. Cap 1B (allows 0) to 8,000B. |
| VARCHAR | => | SqlString | Cap 1 (allows 0) to 8,000 char. |
| UNIQUEIDENTIFIER | => | SqlGuid | Sto 16B. Use NEWID() to create. |
Or, get it with no styles here:
http://blog.jj5.net/files/2004-03-15%201742/2004-03-15%201741.html
John.