代码之家  ›  专栏  ›  技术社区  ›  cabgef

从vb 6项目访问visual studio 2008基于服务器的数据库

  •  1
  • cabgef  · 技术社区  · 15 年前

    是否可以从vb-6应用程序访问visual studio 2008创建的基于服务器的数据库?如果不是,在vb-6应用程序和c应用程序之间共享数据库的最佳方式是什么?

    3 回复  |  直到 15 年前
        1
  •  1
  •   Robert Harvey    15 年前

    如果引用的是VisualStudio 2008附带的SQLServer Express数据库,则可以使用 plain old ADO .

    执行此操作的连接字符串位于 http://connectionstrings.com/sql-server-2005 。最合适的可能是这个:

    Driver={SQL Native Client};Server=myServerAddress;Database=myDataBase;
    Uid=myUsername;Pwd=myPassword;
    

    对于SQL Server Express(这是VS2008附带的),不要错过服务器名称语法server name\sql express,在这里您可以用SQL Server 2005 Express安装所在的计算机的名称替换servername。

    使用ADO针对SQL Server数据库编程的参考如下: http://msdn.microsoft.com/en-us/library/aa905875(SQL.80).aspx

    下面是连接到SQL Server数据库的示例(未经测试)。请注意,此项使用的是SQL Server身份验证,而不是Windows身份验证。检查连接字符串 http://www.connectionstrings.com . 如果SQL本机客户端不工作,请尝试其他客户端之一。

    ' Initialize variables.
    Dim cn As New ADODB.Connection
    Dim connectionString As String
    
    ' Specify the OLE DB provider.
    cn.Provider = "{SQL Native Client}"
    
    ' Specify connection string on Open method.
    connectionString = Server=myMachineName\SQLEXPRESS;Database=myDataBase; _
       Uid=myUsername;Pwd=myPassword;
    cn.Open connectionString 
    
        2
  •  0
  •   John Saunders    15 年前

    我刚刚在一个项目中添加了一个“基于服务的数据库”。我在app.config的configurationStrings元素中执行以下操作:

    <add name="SerializeToSql.Properties.Settings.Database1ConnectionString"
        connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database1.mdf;Integrated Security=True;User Instance=True"
        providerName="System.Data.SqlClient" />
    

    我不知道ADO是否支持用户实例。如果是,那么您可以创建 ADO使用的等效连接字符串。否则,您只需要在sql server express中创建一个“普通”数据库。你应该可以从ADO中使用它。

        3
  •  0
  •   C-Pound Guru    15 年前

    为了让其他计算机看到您的sql express实例,您需要确保它允许远程连接,sql browser服务已打开,并且允许通过防火墙。

    1. 启动SQL Server 2005外围应用配置工具:所有程序->Microsoft SQL Server 2005->配置工具->SQL Server外围应用配置。
    2. 单击服务和连接的外围配置
    3. 单击“远程连接”节点并选择“本地和远程连接”。如果要将服务器称为servername\mssqlserver,则必须使用名为pips或tcp/ip和名为pipes的用户。
    4. 单击“SQL Server浏览器”节点。将启动类型更改为自动并启动服务。

    对于防火墙,请确保为SQL Server程序(C:\ Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\binn\sqlservr.exe)和SQL Server Browser程序(C:\ Program Files\Microsoft SQL Server\90\Shared\sql browser.exe)设置了异常。