Tag: sql

更新链接的服务器SQL Server

我正在尝试创build一个围绕我的天气设备构build的天气数据库。 现在,天气将数据每小时更新一次到excel电子表格。 我已经完成了Excel工作表中数据的初始导入并创build了一个链接服务器。 我现在要做的是创build一个更新语句来从Excel工作表中检索新的数据。 我想这样做,更新语句每天自动运行一次。 链接的服务器名称是weatherdata ,Excel文件名称是acuriteweatherdatabase2具有许多不同的列名称。 我已经在网上查找,并尝试了许多选项,但回来了各种错误消息。 什么是完成这个任务的最好方法?

Excel SQL查询括号

我有这个Excel SQL查询的问题: SELECT * FROM [RawData$] WHERE [Temperature[°C]] <= 100 AND [Temperature[°C]] > 0 AND [Sample ID] AND [Freq [Hz]] 我需要知道,我怎么可以在查询中使用额外的括号,如“[°C]” 谢谢 PS:我也尝试过这样的版本,但是没有奏效 SELECT * FROM [RawData$] WHERE [Temperature[[]°C]] <= 100 AND [Temperature[[]°C]] > 0 AND [Sample ID] AND [Freq [[]Hz]]

如何使用vba通过检查excel中的列来将数据从excel中获取到Excel中

我已经尝试以下检索信息。 从访问数据库到Excel文件: Sub ddd() Const dbloc As String = "C:\Users\mysystem1\Downloads\Database11.accdb" Dim db As DAO.Database Dim rs As DAO.Recordset Dim xlbook As Workbook Dim xlsheet As Worksheet Dim a As Long Dim SQL As String Set xlbook = ActiveWorkbook Set xlsheet = xlbook.Worksheets(1) xlsheet.Range("A5:Z100000").ClearContents Application.StatusBar = "Connecting to external database…" Set db = OpenDatabase(dbloc) SQL = […]

更新上一行

我有一个Excel文件,其中包含一些我想要导出到Access数据库的数据。 在C列中,我有一个名为“Description”的字段。 通常这个领域只占用一个单元格,但可能会更长。 在这种情况下,例如,AP.01有5行说明。 如何更新下一行的第一行? Public Sub updateDB(ByVal PathDB As String, str As String, id As Integer) Dim db As New cDB Dim v As New cVoce Dim rs As ADODB.Recordset = db.RecordSet v.Description = str db.connetti_DB(PathDB) db.get_rs("UPDATE Voice SET Description = '" + v.Description + "' WHERE id= '"+id+"'") End Sub Public Function get_rs(ByVal […]

Excel VBA交叉引用Excel表与SQL表

我一直在使用下面的VBA代码使用Excel VBA运行SQL查询 (注意在这个链接upvoted答案是我使用的方法),这使我可以在Excel单元格中input一个值,并从SQL结果转储到另一列。 然而,我现在的问题是我想运行在Excel列(而不是一个单一的单元格)内的多个单元格,并希望从另一列(像一个Vlookup)从SQL状态提供给我。 我有数据,包含大约20000行,我需要检查状态列中的SQL 100万+logging的状态。 不可能一一使用链接的方法,我不知道是否在我的StrQuery中使用'" & Range("A3") & "'"我可以使用表吗? 说这是我正在使用: Dim cnn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim ConnectionString As String Dim StrQuery As String ConnectionString = "Provider=SQLOLEDB.1;Password=PASSWORD;Persist Security Info=True;User ID=USERNAME;Data Source=REMOTE_IP_ADDRESS;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=DATABASE" cnn.Open ConnectionString cnn.CommandTimeout = […]

在VBA中使用多个内部连接进行SQL查询

我想通过VBA excel运行sql查询下面是我的代码,它成功地为我运行两个表内连接。 现在我想编辑一个查询,在这个查询中,我可以在Inner join的帮助下组合更多的两个表。 Sub SQL() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset strFile = ThisWorkbook.FullName strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile _ & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";" Set cn = CreateObject("ADODB.Connection") Set rs = CreateObject("ADODB.Recordset") cn.Open strCon strSQL = "SELECT [Sheet2$].[Sr], [Code], [Family] FROM [Sheet3$] INNER JOIN [Sheet2$] ON [Sheet2$].[Sr]=[Sheet3$].[Sr]" ''Here i want to […]

其他聚合查询中的聚合子查询

我将Microsoft VBA与Excel一起使用,并使用ADODB连接将工作表视为数据库。 我有一个关于SQL聚合查询,也使用聚合子查询的问题。 问题是我不能像这样使用它,因为它是抛出错误,我不知道如何改变它 SQL查询: Select inv.[Region], inv.[Org Name], inv.[Bill To Customer Number], inv.[Bill To Customer Name], SUM(inv.[AR Global Total Amount]) as "Amount Invoiced", COUNT(pay.[Sales Invoice Number]) as "Count Invoices", SUM(inv.[AR Global Total Amount]*(inv.[Payment Due Fiscal Date]-inv.[Invoiced Fiscal Date])) as "Sum of Terms Mult", SUM(inv.[AR Global Total Amount]*(pay.GL_Min-inv.[Invoiced Fiscal Date])) as "Sum of Pay Days […]

date时间转换错误 – Excel到SQL

我有两个不同的SQL服务器上的两个数据集。 我有数据集1,把它放到Excel中,然后将它放到一个临时表,所以我可以查询它对服务器2上的数据。这是我创build的SQL代码: Create table #JWTemp1 (AutoID varchar(10), IDNumber varchar(20), AltIDNumber varchar(20), AdmitDTTM datetime, AdmitDay varchar(15), AdmitWeekNo int) Insert into #JWTemp1 Values('ID001','BCC445567','ABC445567','42510.7326388889','Friday','21') 每次我尝试运行代码时,都会出现以下错误: 从string转换date和/或时间时转换失败。 我知道这是一个常见的错误,但我尝试了所有的方式,并没有得到任何。 有什么build议么?

如何创build一个返回可变大小数组的excel函数

我想创build一个Excel函数,返回一个SQL查询的结果。 如果结果大小为1×1,我可以这样做。 但是,如果结果比这更大,我不能使代码工作。 有没有解决scheme? 我特别努力的事实是,在我发现的所有例子中,需要select正确数量的单元格,而我的sql查询的结果可以是任何大小…并且随时间变化。 这是我迄今使用的: Public Function getTS(field As String) As String Set oConnection = New ADODB.Connection Dim oRecordset As ADOR.Recordset oConnection.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=AISDB;Data Source=mydomainlocation\mydatabase;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Use Encryption for Data=False;Tag with column collation when possible=False;" Set oRecordset = oConnection.Execute("select " & field & " from mytable where country […]

即使SSMS连接没有问题,也无法将Excel 2016连接到Azure SQL数据库

我有一台Azure SQL Server(原生的,不在虚拟机内部),我每天通过本地机器上的SSMS连接到Windows 10 Pro。 我第一次尝试通过Data-> Get Data-> From Database – > From SQL Server Database来连接Excel 2016。 从那里我被要求为服务器的名称,其次是login凭据,我使用确切的用户名和密码,我正在使用SSMS。 我收到一条错误消息,指出We couldn't authenticate with the credentials provided. Please try again. We couldn't authenticate with the credentials provided. Please try again. 这对我没有任何意义。 我的SSMS工作得很好,而且Excel与白名单中的SSMS处于相同的IP地址。 Excel的设置里面有其他东西,我错过了吗? 仅供参考,我试过服务器名称,无论是否有1433。 同样的结果。 下面的截图。