Tag: 存储过程

对象closuresVBA时不允许操作

当它到达下面的代码的第四行时,我的代码与上述错误失败。 我之前在我的程序中使用了相同的格式,它工作得很好。 如果需要更多代码来解决错误,我很乐意发布。 谢谢。 With rsTIP19 .ActiveConnection = cnTIP .Open "exec usp_Service_Data_Query_QA" ThisWorkbook.Sheets("Service_Data").Range("A" & Rows.Count).End(xlUp).Offset(1, 0).CopyFromRecordset rsTIP19 .Close End With

SQL Server 2014 – 链接的Excel文件上的错误15281

我将报表服务器从2008 R2 32位升级到2014 32位。 我们已经链接了excel文件的服务器。 这些是.xls文件(尽pipe问题在更新到.xlsm时仍然存在)。 连接工作正常(select并插入); 但是,当我们运行一个存储过程来在Excel文件中创build一个新的选项卡时。 USE [SupplementaryReports] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE PROCEDURE [dbo].[spExecute_ADODB_SQL] @DDL VARCHAR(8000), @DataSource VARCHAR(500), @Worksheet VARCHAR(200)=NULL, @ConnectionString VARCHAR(255) = 'Provider=Microsoft.ACE.OLEDB.12.0; Data Source=%DataSource; Extended Properties=Excel 12.0' AS DECLARE @objExcel INT, @hr INT, @command VARCHAR(255), @strErrorMessage VARCHAR(255), @objErrorObject INT, @objConnection INT, @bucket INT SELECT @ConnectionString […]

Power Query Mstring到date时间转换

我试图调用一个可以为空的date时间值的存储过程,但我正在用这个循环运行。 在下面你可以看到我试过的所有组合以及相关的错误: FromDate = Excel.CurrentWorkbook(){[Name="FromDate"]}[Content]{0}[Column1], FromDateQuery = if FromDate = "" then "" else "@FromDate = '"& DateTime.From(FromDate)&"',", Expression.Error: We cannot apply operator & to types Text and DateTime. Details: Operator=& Left=@FromDate = ' Right=15/03/2017 00:00:00 如果我按照说明,并删除&build议我得到以下内容:Expression.SyntaxError:令牌逗号预计。 试过把它作为一个string传递: FromDate = Excel.CurrentWorkbook(){[Name="FromDate"]}[Content]{0}[Column1], FromDateQuery = if FromDate = "" then "" else "@FromDate = '"& Text.From(FromDate) &"',", […]

在存储过程中生成excel文件,而不在oracle中创build目录

我有下面的代码生成excel文件。 我已经在我的本地机器上testing过它的伙计,我也在我的loacl机器数据库中创build了oracle目录。 但现在,因为我需要在生产中使用这个过程,由于安全原因,我不能创buildoracle目录,那么在这种情况下,该过程是抛出错误 ORA-29280: invalid directory p 有什么其他的方式,我可以在特定的文件夹中生成文件,而无需在oracle中创build目录? Create or replace PROCEDURE test_report IS lv_dir VARCHAR2(4000); lv_data_file VARCHAR2(4000) := 'test_report' || '_' || to_char(SYSDATE, 'dd-Mon-yyyy') || '.csv'; lv_err_file VARCHAR2(4000) := 'test_report' || '_' || to_char(SYSDATE, 'dd-Mon-yyyy') || '.csv'; lv_dfile utl_file.file_type; lv_efile utl_file.file_type; ln_err_cnt NUMBER; ln_prc_cnt NUMBER; BEGIN lv_dir := 'C:\test\TEST_REPORT'; lv_dfile := utl_file.fopen(lv_dir, lv_data_file, 'W'); […]

通过Excel数据连接调用的存储过程失败

我在Excel 2007工作簿中有表格。 该表具有到存储过程的外部SQL数据连接。 在存储过程中,我想清除并填充一个中间表,然后再查询数据。 存储过程的工作原理是,如果我没有INSERT语句(我在Excel之外插入数据),但是尽快尝试插入到存储过程的临时表中,我得到一个错误"The query did not run or the database could not be opened" 。 有趣的是,尽pipe存在错误,存储过程中的插入仍然被执行 – 数据在错误之后出现。 任何人都知道我可以做插入而不触发错误?

使用SQL 2012 SP从Excel导入制表符分隔的w /逗号

我从Excel创build一个制表符分隔的文件,通过存储过程使用SQL 2012导入。我通过保存制表符分隔创build文件。 有些值需要包含逗号。 Excel会自动用逗号将双引号括起来。 这些值作为空值导入。 我需要用逗号input值,而不用双引号。 我可以打开文本文件并删除所有双引号,导入工作正常。 还有其他build议吗? 数据是在Excel中给我的,所以我必须从这个开始。 是否有另一个过程,而不是保存为制表符分隔可以使用逗号? 我可以更改存储过程中的批量加载语句以不包含双引号吗? 这里是表格: CREATE TABLE dbo.Logins ( [GenericID] numeric(10, 0) NOT NULL Primary Key, [LoginID] varchar(50) NOT NULL, [EmpType] varchar(50) NOT NULL ); 存储过程: CREATE PROCEDURE [dbo].[InsertUserText] WITH EXEC AS CALLER AS IF OBJECT_ID('TEMPDB..#LoginTemp') IS NULL BEGIN CREATE TABLE #LoginTemp(LoginID varchar(50),EmpType varchar(50)) BULK INSERT #LoginTemp FROM […]

entity framework存储过程

我正在构build一个Excel导入function,允许用户指定哪些列映射到对象的哪个属性。 然后使用reflection,我创build一个新的对象,设置属性值,并将新的对象插入DbSet。 但是,一些新的对象可能是重复的,应更新现有的logging,而不是作为新的对象添加到DbSet。 Excel工作表将不包含该对象的ID列。 所以我想为其他字段(如FirstName和LastName)的组合添加一个索引。 然后,我想将一个对象列表传递给存储过程,就像传入一个表参数一样; 所以我可以select索引匹配的数据库中的所有logging。 如何将对象列表传递到entity framework存储过程?

如何将多个值传递给存储过程

我有一个带有下拉数据validation框的Excel工作表,用户可以从整数值列表中select以确定部门或单词“ALL”以获取所有部门。 我使用SQL将该单元格的值传递给存储过程。 在SQL中,我有WHERE Department=@Dept 如果我只允许一个部门select,这项工作很好,但我也想允许所有部门。 关于如何做这个工作有什么想法吗? IN运算符还是其他的一些技巧?

在Excel消息框中显示来自SQL Server过程调用的结果

我在Excel中有一个VBA子。 它需要调用SQL Server过程,并在消息框中显示调用的结果。 (主要是因为我维护别人的代码 – 否则,我不会使用Excel。) 我创build我的SQL语句来调用过程。 我有subs打开连接。 但是在显示那个过程调用的结果的过程中我仍然错过了一些东西。 以下是我到目前为止: Dim Today As Date Dim result As Date Dim sSQLStatement As String Dim strDate As String Dim Recordset As ADODB.Recordset Today = DateTime.Now() result = DateSerial(Year(Today), Month(Today) – 1, 1) strDate = Year(result) & "-" & Format(Month(result), "00") & "-" & Format(Day(result), "00") DBOpen sSQLStatement […]

在将sheetname传递给过程时input不匹配

我很抱歉,我确定我忽略了一些简单的事情,但是太多的时间已经过去了,我无法弄清楚为什么我无法将名为MAIN的工作表作为parameter passing给下面的“ Import过程的参数。 MAIN是工作簿中的工作表。 我的目标是拥有一个名为Import的通用过程,我可以在同一个工作簿中传递任何工作表,并通过简单地将工作表名称作为参数parameter passing,轻松地将以下列单元格关系存储到数组中。 Sub Import(sheetname As Worksheet) 'Debug.Print (sheetname) cName = "Fund ID" cA = sheetname.Rows.Find(What:=UCase(cName), LookAt:=xlWhole, SearchDirection:=xlNext).Column cName = "CUSIP" cB = sheetname.Rows.Find(What:=UCase(cName), LookAt:=xlWhole, SearchDirection:=xlNext).Column cName = "Description" cC = sheetname.Rows.Find(What:=UCase(cName), LookAt:=xlWhole, SearchDirection:=xlNext).Column cName = "Security Type" cD = sheetname.Rows.Find(What:=UCase(cName), LookAt:=xlWhole, SearchDirection:=xlNext).Column cName = "Currency" cE = sheetname.Rows.Find(What:=UCase(cName), LookAt:=xlWhole, SearchDirection:=xlNext).Column cName […]