将Delphi链接到SQL Server

问题描述 投票:0回答:3

我正在使用Delphi XE4和SQL server express 12,本地在C盘上。我可以通过ADO comp将Delphi链接到Access DB。问题是当我尝试链接SQL服务器数据库时 - 它没有看到我的服务器/数据库。我不确定如何指定我的服务器名称(USER-PC \ SQLEXPRESS - 由SQLserver创建的名称)或我的数据库名称(C:\ Program Files(x86)\ Microsoft SQL Server \ MSSQL11.SQLExpress \ MSSQL \ DATA \ TestDB.Mdf)。没有使用密码。我尝试通过ADoTable(SQL SERVER Native Client 11.0以及SQL Server的Microsoft OLE DB Provider)和TSQLConnection。 (我最近一直在使用MS Access - 与外部数据库连接脱节......)

sql-server delphi delphi-xe4
3个回答
0
投票

您需要以某种方式提供服务器信息,您可以使用ConnectionString然后用于构建连接。连接字符串如下所示:

ConnString =
  'Provider=SQLOLEDB.1;Persist Security Info=False;' +
  'User ID=%s;Password=%s;Data Source=%s;Use Procedure for Prepare=1;' +
  'Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;'+
  'Tag with column collation when possible=False';

使用ADOQuery查看qazxsw poi。

并查看文档:this example


0
投票

如果右键单击TADOConnection组件,则可以选择“编辑连接字符串”。这将打开一个对话框,其中包含一个标记为Build ...

单击此按钮可打开向导。选择“Microsoft OLE DB Provider for SQL Server”作为提供程序,然后单击“下一步”。现在,您将获得当前可见的所有SQL Server的列表。如果您的列表不在此列表中,则该列表不可用。 SQL Server服务是否已启动?

如果它在列表中,则按照向导进行构建有效的连接字符串。


0
投票

实际上,你必须连接到MSSQL Express而不考虑位数(32/64)。您的SQL Server Express启用了TCP / IP和/或命名管道连接而不仅仅是共享内存?

要检查,请启动SQL Server配置管理器(不知道它是否在2012年更改,但它是2008 / 2008r2上的名称),并查看<您的服务器实例>项目的SQL Server网络配置/协议(它将有2个)这些在64位系统上,如果我的内存没有让我失望 - 我的机器是32位,请检查两者。

© www.soinside.com 2019 - 2024. All rights reserved.