2011-12-10 149 views
0

是否有任何方法來比較兩個不同數據庫的數據類型。比較sql服務器的數據類型和ms訪問c#

+1

建議:使用單個數據提供者(OleDB)讀取和寫入不同數據庫的行。 – adatapost

+0

我不能僅使用OleDb提供程序讀取和寫入不同的數據庫,因爲它與64位操作系統具有兼容性問題。 – Awadhendra

+0

你想用什麼提供者訪問Ms-Acces?它是ODBC嗎? – adatapost

回答

5
Jet Engine (Access) | Sql-Server       | C# 
--------------------+-------------------------------------+-------------------- 
Text (len < 256) | char, nchar, varchar, nvarchar  | string 
Memo    | text, ntext, the above with len>255 | string 
Byte    | tinyint        | byte 
Integer    | smallint       | short 
Long Integer  | integer (int)      | int 
Single    | real        | float 
Double    | float        | double 
Replication ID  | uniqueidentifier     | Guid 
Decimal    | decimal        | decimal 
Date/Time   | smalldatetime, datetime, datetime2 | DateTime 
Binary  (8 bytes)| timestamp, rowversion (Since V2008) | byte[] (8 bytes) 
Currency   | smallmoney, money     | decimal 
AutoNumber   | int + identity property    | int 
Yes/No    | bit         | bool 
OLE Object   | image        | byte[] 
Hyperlink   | <no equivalent>      | string 
<no equivalent>  | binary, varbinary     | byte[] 

我從How to Migrate from Access to SQL Server 2000獲取了這些信息並添加了c#列。

還要注意,大多數類型在數據庫中都是可空的。除非.NET類型是引用類型,否則將Nullable列映射到C#中的Nullable<T>T?)。

+0

謝謝Olivier,我會用它,然後讓你知道它爲我工作還是不工作。 – Awadhendra