理解VBA连接到SQL

理解VBA连接到SQL,sql,vba,excel,Sql,Vba,Excel,我没有编程方面的问题,我的程序与我拼凑的代码配合得很好,但我确实想问问是否有人能帮我理解其中的一些代码。具体来说,是将VBA连接到SQL的部分。代码如下: 创建一个连接对象。 作为ADODB.连接的Dim cnPubs 设置cnPubs=newadodb.Connection 作为整数的Dim-icol '提供连接字符串。 作为字符串的Dim strConn '使用SQL Server OLE DB提供程序。 strConn=“Provider=SQLOLEDB.1;Integrated Sec

我没有编程方面的问题,我的程序与我拼凑的代码配合得很好,但我确实想问问是否有人能帮我理解其中的一些代码。具体来说,是将VBA连接到SQL的部分。代码如下:

创建一个连接对象。 作为ADODB.连接的Dim cnPubs 设置cnPubs=newadodb.Connection 作为整数的Dim-icol '提供连接字符串。 作为字符串的Dim strConn '使用SQL Server OLE DB提供程序。 strConn=“Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;”&“数据源=CIWSQLXD0026\DEV;准备使用过程=1;自动翻译=True;数据包大小=4096;”&“工作站ID=AUSL0335;初始目录=CSB\u ACTL\u AEData” '现在打开连接。 cnPubs.开放式结构 cnPubs.CommandTimeout=0 我最感兴趣的是理解以下部分中的属性:

使用SQL Server OLE DB提供程序。 strConn=“Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;”&“数据源=CIWSQLXD0026\DEV;准备使用过程=1;自动翻译=True;数据包大小=4096;”&“工作站ID=AUSL0335;初始目录=CSB\u ACTL\u AEData”
提前感谢您的帮助!对不起,代码的颜色很奇怪。长期用户,新手海报。

这是一个连接字符串,其中包含建立与数据库连接所需的所有信息,包括数据源、配置中应使用哪种类型的安全/设置等信息。

VBA是一种编程语言,编程语言使用库来执行您要求它们执行的任何操作。有一个库可以将文本复制到剪贴板,有一个库可以打开internet窗口并在IE和您的程序之间进行通信,因此还有一个库可以连接到数据库。VBA上使用的两个主要工具是ADODB和DAO。在您的情况下,您使用的是ADODB。您感兴趣的一行几乎是一组参数,这些参数被发送到SQL库以连接到数据库。可以将其视为一个网站URL。这是我搜索“SQL”时谷歌的URL

你可以看到它有很多参数,q=SQL是我搜索的,aqs=chrome是我正在使用的客户端chrome。还有更多信息告诉服务器该做什么以及如何搜索“SQL”

在SQL连接字符串上,它的参数告诉它连接到哪里以及如何连接

strConn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;" & "Data Source=CIWSQLXD0026\DEV;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;" & "Workstation ID=AUSL0335;Initial Catalog=CSB_ACTL_AEData"

Provider是连接类型,integrated security是连接时使用的安全协议,Data Source是位置(如web链接),依此类推。

这是一个OLEDB连接字符串。它指定要使用的安装在计算机上的驱动程序,以及驱动程序连接到数据库所需的属性。对于大多数数据库来说,这是一个很好的资源。您的语法可以用更正。我现在为您完成了这项工作感谢您的回复。我想知道中的属性实际上在做什么,比如:Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;最后,是否可以只使用“Data Source=CIWSQLXD0026\DEV?”"? 正在签出连接字符串com。谢谢酷。谢谢,那很有帮助。我认为我确实需要深入研究代码,并更多地使用它来适应它。有趣的是,ConnectionStrings.Com网站提出了一些与我所期望的连接到SQL所需的东西,这些东西与我所期望的要简单得多。
strConn = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;" & "Data Source=CIWSQLXD0026\DEV;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;" & "Workstation ID=AUSL0335;Initial Catalog=CSB_ACTL_AEData"