2012-06-21 2 views
0

SQL 또는 VBScript에 대해 잘 모릅니다.VBScript 및 SQL Server 2008 질문

SQL 2008을 실행하는 SQL Server에 연결을 시도하고 있습니다. 연결하고 싶지 않아 할 수 없습니다.

  • "데이터 소스 이름을 찾을 수 없으며 기본 드라이버가 지정되지"
  • "잘못된 문자" "사용자가 로그인 '사용자'실패 ': I는 다음과 같은 다양한 오류가 계속

    나는 이미 http://www.connectionstrings.com에 대해 알고 있지만 많은 것들이 의미하는 것이 무엇인지 모르겠다. 데이터 소스 란 무엇입니까? 초기 카탈로그 란 무엇입니까?

    여기까지 제가 지금까지 있습니다.

    Dim result 
    Set cn = CreateObject("ADODB.Connection") 
    cn.ConnectionString = "Provider=SQLOLEDB.1;Server=MyIP;Database=SQLDatabase;User ID=user;Password=pass" 
    cn.Open 
    strQry = "select * from Users" 
    set result = cn.execute(strQry) 
    

    누군가가이 머리와 꼬리를 만들 수 있도록 도와 줄 수 있습니까?

    편집 1 : 이것은 서버 구성 관리자에서 볼 수 있습니다.

    enter image description here

    편집 2 :이 분명히을하지 드려 죄송합니다. 로컬 컴퓨터에 연결하지 않았습니다. 네트워크상의 컴퓨터에 연결하고 있습니다.

  • 답변

    3

    데이터 원본 = 연결하려는 데이터베이스 엔진의 인스턴스, 호스트 이름 또는 명명 된 인스턴스와 결합 된 호스트 이름. 종종 localhost 또는 localhost\SQLEXPRESS이지만 IP 주소 또는 정규화 된 도메인 이름 (네트워크 내부 또는 외부) 일 수도 있습니다.

    초기 카탈로그 = 연결할 데이터베이스. 연결 문자열에 사용 된 사용자 이름/암호와 관련된 로그인은 특정 서버 역할이거나 적어도 공용 역할에 속한 데이터베이스의 사용자와 연결되어 있어야합니다.

    당신이 설치 한 경우 SQL Server Express를 Edition은 연결 문자열 해야한다 : 즉 올바른 연결 문자열 인 경우 우리는 확실히 알 수 없다

    cn.ConnectionString = "Provider=SQLNCLI10;" & _ 
        "Data Source=myIP\SQLExpress;" & _ 
        "Initial Catalog=SQLDatabase;" & _ 
        "User ID=user;Password=pass" 
    

    - 당신이 설치 한 경우 기본 인스턴스 또는 인스턴스의 이름을 다른 것으로 지정했습니다.

    "Data Source=localhost;" & _ 
    

    또는

    "Data Source=(local);" & _ 
    

    또는

    "Data Source=.;" & _ 
    

    또는 (당신이 Express를 설치하지 않은 말했다 때문에) 당신이 시도 할 수있는 다른 변형은, 경우에 myIP 몇 가지 문제가 있습니다

    "Data Source=127.0.0.1;" & _ 
    

    실제로 설치 한 항목을 보려면 시작> 모든 프로그램> SQL Server 2008> 구성 도구> SQL Server 구성 관리자로 이동하여 SQL Server 서비스를 클릭하십시오.인스턴스 이름이 광산과 일치하지 않을 수 있지만

    enter image description here

    : 오른쪽 창에서는 다음과 같이 표시됩니다. SQL Server (MSSQLSERVER)이 표시되면 이는 기본 인스턴스이며 연결 문자열의 데이터 소스는 . 또는 (local) 또는 (localhost)이됩니다. SQL Server (something other than MSSQLSERVER)을 보면 .\something other than MSSQLSERVER 등이 될 것입니다. 인스턴스가 실행 중인지 확인할 수도 있습니다. 이는 다른 문제 일 수 있습니다. 연결하려는 인스턴스가 중지 된 경우 마우스 오른쪽 단추를 클릭하고 시작을 선택할 때까지 해당 인스턴스에 연결할 수 없습니다. 인스턴스를 마우스 오른쪽 단추로 클릭하고 속성을 선택하여 서비스가 자동으로 시작되도록 설정할 수 있으므로 다음 번에 다시 부팅 할 때이 프로세스를 반복하지 않아도됩니다. 서비스가 항상 실행되도록하려면.

    구성 관리자에 표시된 내용을 표시하면 필요한 정확한 연결 문자열을 확인할 수 있습니다.

    편집 지금에 포함 된 업데이트 오류 메시지가 표시되는지

    :

    (1) 있는지 확인 TCP/IP는 다음과 같습니다

    [DBNETLIB][ConnectionOpen (Connect()).] 
    

    당신은 몇 가지 옵션을 시도 할 수 있습니다를 사용하도록 설정되었습니다. 구성 관리자의 SQL Server 네트워크 구성> MSSQLSERVER에 대한 프로토콜에서 TCP/IP를 마우스 오른쪽 단추로 클릭하고 사용을 선택합니다. SQL Server를 다시 시작해야합니다. (공유 메모리를 사용할 수 있어야하지만, 이것은 내가 항상 고전적인 ASP를 구성하는 데 사용하는 방법입니다.)

    (2) 연결 문자열에 다음을 추가

    cn.ConnectionString = "Provider=SQLNCLI10;" & _ 
        "Data Source=localhost;" & _ 
        "Initial Catalog=SQLDatabase;" & _ 
        "User ID=user;Password=pass;" & _ 
        "Network=DBMSSOCN;" 
    
    +0

    내가 SQL을 사용하지 않는 익스프레스, SQL Server 2008 R2를 사용하고 있습니다. – ToastyMallows

    +0

    @ToastyMallows는 관련이 없습니다. 중요한 것은 SQL Server를 기본 인스턴스 또는 명명 된 인스턴스로 설치했는지 여부와 서비스가 실행 중인지 여부입니다. 익스프레스는 매우 일반적이어서 이름이 지정된 인스턴스 (그리고 대부분의 사람들은 이름이 지정되지 않을 것으로 예상되기 때문에) 만 언급했습니다. –

    +0

    스크린 샷을 추가했습니다. 지금은'Data Source = localhost; '를 사용하고 있습니다. – ToastyMallows