2012-09-28 3 views
0

SQL Server를 백엔드로 사용하여 vb.net으로 작성된 내 프로그램에 대한 설정을 만들 수있는 방법이 있습니까? 데이터베이스 코드를 생성하는 모듈이 있고 또한 내 프로젝트에 대한 vb.net에서 설치 프로그램을 만들었지 만이 설치 프로그램이 Visual Studio 및 SQL Server를 설치하지 않은 시스템에서도 제대로 실행되기를 바랍니다. 나는 둘 다 가지고있는 시스템에서 실행을 시도했지만 오류는 SQL 서버 2005는 기본 설정에서 원격 연결을 허용하지 않지만 일부 설정을 변경하려고 시도했지만 아무 것도 작동하지 않는 것 같습니다. 데이터베이스를 만들 때 서버가 있어야합니까?SQL 서버로 vb.net에서 설정 만들기

+0

흠, 왜 SQLite와 같은 비 서버 솔루션을 사용해 보지 않으시겠습니까? – TheZ

+0

sql lite는 server..sorry와 같은 명령으로 작동하지만 sql lite 명령에 대해 많이 알고 있으며 SQL Server에 데이터베이스를 작성하기위한 코드를 많이 작성했습니다. 다시 코드를 변경하려고하지 않습니다. ( –

답변

0

조금 구글은 항상 수행하는 트릭 ...

는이 단계를 완료해야하며, 원격 연결을 허용하도록 SQL Server 2005을 구성하려면 다음 SQL Server의 인스턴스에

1) 사용 원격 연결을 원격 컴퓨터에서 연결할 대상

2.) SQL Server Browser 서비스를 켜십시오.

3.) SQL Server 및 SQL Server Browser 서비스와 관련된 네트워크 트래픽을 허용하도록 방화벽을 구성합니다.

How To Configure Sql 2005 to allow Remote Connections

+0

@ peterG : 대답 주셔서 감사하지만 전 요구 사항에 SQL Server Express를 포함하여 시도하고 그것은 "원격 연결이 허용되지 않습니다"같은 오류를 준다 ... 나는이 라인을 이해할 수있는 이해하지 못했습니다 "당신은 다음 수정할 수 있습니다 package.xml C : \ Program Files (x86) \ Microsoft SDKs \ Windows \ v7.0A \ Bootstrapper \ Packages에있는 파일 " –

+0

@ user1532208 : 감사합니다. 아마도이 부분을 살펴 봐야합니다. 방법은 내 SQL 코드를 실행 –

+0

: - 감사합니다 스캇하지만이 꽤 긴 프로세스를 시도하고 내가 소프트웨어의 사용자가 설정을 변경하는 부담을 가지고 싶지 않아. 어쨌든 내가 할 수있는 이 프로그램을 작성하는이 .... 더 이상 나를 인도 할 수 있습니다 –

0

나는, 나는 다음과 같은 논리를 사용하는 클라이언트에 설치되는 SQL 서버 필요한 프로그램 쓰기 :

  1. Determine if SQL Server is installed on the client machine

  2. 를가 설치되어 있지 않은 경우를, I 사용자에게 다운로드를 요청하거나 설치 스크립트를 사용하여 다운로드하십시오. NSIS 설치 프로그램을 사용합니다. 요구 사항 (및 클라이언트의 운영 체제)에 따라 사용자에 적합한 버전을 설치해야합니다. 일반적으로 SQL Sever 2008 R2 Express Edition, SP1을 사용합니다.

그런 다음 내 설치 프로그램 스크립트 명령을 사용하여 SQL 설치 프로그램을 실행하십시오. NSIS에서는 ExecWait입니다. VB.Net에는 this과 같은 것이 있습니다. 명령 줄 매개 변수를 통해 설치해야합니다. http://msdn.microsoft.com/en-us/library/ms144259(v=sql.100).aspx 다음

내가 무엇을 사용 :

C:\PathToMySQLDownload\SQLEXPR.exe /QUIETSIMPLE /SkipRules=RebootRequiredCheck 
/ACTION=install /IACCEPTSQLSERVERLICENSETERMS=1 /FEATURES=SQL 
/INSTANCENAME=MSSQLSERVER /SECURITYMODE=SQL /SAPWD=MySAPassword /NPENABLED=1 
/TCPENABLED=1 /SQLSVCACCOUNT="NETWORK SERVICE" /SQLSYSADMINACCOUNTS="NETWORK SERVICE" 
/AGTSVCACCOUNT="NETWORK SERVICE" /ASSVCACCOUNT="NETWORK SERVICE" 
/RSSVCACCOUNT="NETWORK SERVICE" /ISSVCAccount="NETWORK SERVICE" 
/ASSYSADMINACCOUNTS="NETWORK SERVICE 
0

당신은 당신의 설치 프로젝트를위한 전제 조건으로 SQL Server Express를 포함 할 수 있습니다 여기에 명령 줄 매개 변수의 목록입니다. 당신은 설치 프로젝트를 빌드 할 때

, 그것은 C에서 설치에 필요한 패키지를 데리러 : \의 Program Files (x86) \ 마이크로 소프트의 SDK \ WINDOWS \ v7.0A \ 부트 스트 래퍼 \ 패키지

당신에게 SQL Express의 package.xml 파일을 수정하여 설치 환경에 맞게 구성되도록 변경할 수 있습니다. 원격 액세스 할 수 있도록 SECURITYMODE = SQL 을 추가 명령 인수 요소를 찾아 다음 혼합 모드 인증을 전환하는 추가 DISABLENETWORKPROTOCOLS =

0

때 (또는 SQL 2008 R2 것이/tcpenabled = 1이다) 최종 사용자가 isntallation을 실행하면 지정한 옵션으로 SQL Express가 먼저 설치됩니다.

+0

@mayur 이것을 수정하여 세부 정보를 추가했습니다. – peterG

관련 문제