2010-04-30 4 views
1

이렇게 할 방법이 있습니까?SQL Server 2005가 설치되어 있지 않으면 SQL Server CE 데이터베이스를 만들고 연결할 수 있습니까?

업데이트 : 죄송합니다. 더 많은 정보가 포함되어 있어야합니다. 컴퓨터에서 실행되는 C#에서 (즉, Windows Mobile 장치에서 실행되지 않는) System.Data.SqlServerCe을 사용하여 SQL CE 데이터베이스를 만들고 연결하려고합니다.

이 코드 :

string connstr = "Data Source=\"" + 
    filename + "\";Persist Security Info=False;"; 
System.Data.SqlServerCe.SqlCeEngine engine = new SqlCeEngine(connstr); 
engine.CreateDatabase(); 

는 ... 설치 SQL 서버 2005이있는 PC에서 잘 작동하지만 설치하지 않는 PC에 실패합니다. 컴퓨터에 SQL Server 2005가 설치되어 있지 않으면이 작업을 수행 할 수있는 방법이 있는지 확인하려고합니다.

답변

1

당신이 의미하는 바는 코드가 아닌 도구로 만들 수 있다는 것입니다. Studio는 서버 탐색기로 이동하여 새 연결을 추가하기 만하면 만들 수 있습니다 (만들 수있는 옵션이 제공됨).

Studio가 필요하지 않은 무언가를 찾고 계시다면 Primeworks' Data Port Console은 정말 좋은 도구입니다.

편집

당신이 다음 네, 당신은 여전히 ​​설치 서버없이이 작업을 수행 할 수있는 코드를 통해 작성해야하는 경우. SQL CE 재배포 가능 바이너리 (적절한 32/64 비트 용)가 대상과 응용 프로그램에서 찾을 수있는 위치에 배포되어 있는지 확인하십시오.

참조 로컬

C에서 : \ 프로그램 파일 마이크로 소프트 SQL 서버 컴팩트 에디션 \의 V3.5

or online \ (86).

+0

죄송합니다. 코드로 생성하는 것이 었습니다. 방금 클라이언트의 프로덕션 컴퓨터가 SQL Server 2005에 대한 라이선스가 없다는 것을 알았 기 때문에 SqlCE가 어쨌든 작동하도록하거나 SQL Server를 대체 할 방법을 찾지 못했습니다. (Oracle Lite는 이미 나와 있습니다. SQLite에서). – MusiGenesis

+0

그건 확실히 작동할까요? 나는 7 sqlce ... DLL을 서버의 SYSTEM32 폴더에 복사하려고했지만 작동하지 않았다. SQL ce의 전체 설치가 필요합니까? – MusiGenesis

+0

100 % 긍정적입니다. 우리는 데이터 수집 및 오류 저장을 위해 SQL CE를 사용하는 데스크톱 응용 프로그램을 가지고 있습니다. 그뿐 아니라 응용 프로그램 설치 프로그램에서 이진 파일을 포함하고 있습니다. 32 비트 및 64 비트 용으로 작동합니다. 문제 없습니다. – ctacke

2

Visual Studio에서 연결할 수 있습니다. 연결을 추가 할 때 데이터 원본을 Microsoft SQL Server에서 Microsoft SQL Server Compact 3.5로 변경하십시오.

- 관리 도구와 달리 서버를 의미하는 경우 SQL Server 2008 관리 Studio [Express]는 SQL CE 데이터베이스를 직접 열 수 있습니다.

편집 : 데이터베이스를 만들려면 Visual Studio에서 데이터베이스를 만들고 새 항목을 추가 할 때 "로컬 데이터베이스"를 선택하십시오. 그것은 SQLCE 데이터베이스입니다. SSMS [E]에서 SQL Server Compact 옵션을 선택하면 데이터베이스 파일 드롭 다운의 옵션으로 "새 데이터베이스"를 선택할 수 있습니다.

Edit2가 :하지 SQL 서버 2005 SQL CE는 별도의 제품 (download page)이 있지만 바닐라 대상 시스템에 성공적으로 SQL의 CE 실행에 대해 작성된 코드를 위해, 당신이 그것을에 뭔가를 설치해야합니다. 또한 제품의 MSI 설치 프로그램을 만들 때 Visual Studio에서 재배포 가능 모듈로 나타나야합니다.

+0

죄송합니다. 내 업데이트를 참조하십시오. – MusiGenesis

+1

@MusiGenesis : 내 업데이트를 참조하십시오. :) 당신이보고있는 것은 아마도 우연의 일치입니다. SQL Server 2005를 사용하는 컴퓨터에도 SQL Server CE가 있습니다. 후자는 어떤 식 으로든 전자에 의존하지 않습니다. – Aaronaught

1

단지 Aaronaught에 추가하려면 SQL CE 데이터베이스에 프로그래밍 방식으로 연결하려면 SQL Server가 필요하지 않습니다. CE는 proc에서 실행되며 SqlCE dll이 설치되는 한 (현재 프레임 워크의 일부 임) 다음에는 문제없이 연결할 수 있어야합니다.

+0

죄송합니다, 내 업데이트를 참조하십시오. – MusiGenesis

관련 문제