1. 程式人生 > >vs2010無法配置連線sql server 2000資料庫的解決辦法

vs2010無法配置連線sql server 2000資料庫的解決辦法

最近做個新專案,用的vs2010+sql2000,因為之前的專案都是從2008遷移過來的,linq的dbml檔案都已經生成好了的,在VS上沒有什麼涉及到資料庫連線的操作,所以到今天在ServerExplorer新建資料庫連線時才發現這個問題.

新建資料庫或連線,會提示:This server version is not supported. You must have Microsoft SQL Server 2005 or later.

查了下資料,確定VS2010起已經不再對SQL2000做支援了,你將無法再通過SqlClient在VS2010中連線sql2000,當然,你可以用ODBC連線來建立與SQL2000的連線,但是基本也只是個擺設,無法編輯表,不能通過拖拽表的形式生成dbml檔案

這個問題的解決方案有三種

1.升級SQL2000到2K5或者2K8,我在自己的一些伺服器上已經開始了使用2K5,雖然還沒深入去了解2K5的全部特性,但是起碼不會比2000更差,SQL2000雖然是個很不錯的資料庫,但是終究是要升級的,不如就趁機升級好了.

2.回退VS到2008.這個不予置評.

3.使用SqlMetal.exe工具,這個工具安裝VS之後是自動安裝好了的,開啟vs command prompt就可以直接使用了

使用很簡單,記住下面2個命令就可以自由的生成dbml及相應的cs檔案了

a.生成dbml檔案

sqlmetal /server:dbserver的名稱 /database:要連線的資料庫名稱 /dbml:c:\xxx.dbml

b.生成cs檔案

sqlmetal /namespace:CS檔案的名字空間 /code:C:\xx.designer.cs /language:csharp c:\xx.dbml

檔案生成完畢後拷貝到專案裡覆蓋即可.這個方法雖然比直接在IDE裡拖拽麻煩了一點,但是如果不想升級資料庫,這倒是個好方法.

SqlMetal.exe更多用法可以檢視MSDN:http://msdn.microsoft.com/en-us/library/bb386987.aspx