Tag: sql server

整数为零,上传到SQL Server时将忽略“0”

我有一个页面,允许用户上传一个Excel文件,并将数据插入Excel文件到SQL Server。 现在我有一个小问题,在Excel文件中有一个值为“001”,“029”,“236”的列。 当它插入到SQL Server时,前面的零会在SQL中被忽略,所以数据将变成“1”,“29”,“239”。 SQL中列的数据types是varchar(10)。 如何解决这个问题?

预定的SSIS包创buildexcel文件,date为文件名

我需要一些反馈意见,说明我想做什么是最好的方法,让我来定位。 我有一个巨大的数据库,不断接收新的投入。 现在我需要有一个excel文件,显示过去一天的所有input栏。 所以我认为最好的方法是使用SSIS包。 我从来没有真正使用过SSIS,所以我不太确定可能性有多广。 所以目前我只能创build一个所有input的SSIS包。 但是我每天都需要一个新的文件,而且文件名也有数据在里面,因为旧的文件不会被删除等。所以我需要能够创build一个.xls文件,其中包含文件名中的date。 是否有捷径可寻? 我也想知道是否可以自动修改这个excel文件的布局,特别是列的宽度,因为它们都是默认的宽度,这对客户端来说并不是非常有用。 我听说也可以使用Visual Studio创buildSSIS包,这是否会有所作为,或者可能性是否相同(请记住,我是ac#程序员)? 非常感谢

如何实现高性能Excel VSTO到SQL Server?

我正在开发Excel 2010 VSTO解决scheme(在Visual Studio 2010中为Excel工作簿进行代码隐藏),并且需要与集中的SQL Server 2008 R2数据源进行交互以进行读取和写入操作。 数据库将在主表中包含多达15,000行以及相关的行。 理想情况下,电子表格将从数据库中填充,asynchronous使用,然后上载以更新数据库。 我关心的是数据量方面的performance。 电子表格将通过Web门户提供下载。 到目前为止我已经考虑过两个解 作为数据访问层的WCF服务,工作簿在线查询以使用整个必需的数据集填充其表。 一旦更新从工作簿本身触发,更改将被发布到WCF服务。 从Web门户下载隐藏工作表时,将工作簿的数据预加载到自己的数据中。 通过Web门户上传修改后的工作簿可以保存更改。 在我们的核心function运行之前,我并没有对优化进行太多的调整,但是我不想把自己放在任何一个不错的select上。 我想避免一个场景,我们必须有select地处理一小部分数据,以避免放慢速度 – >将这种行为整合到电子表格中听起来像是不必要的复杂性。 也许有人在这方面有更多的经验可以推荐一种不会在我们脚下射击的方法?

如果数据stream中的某些文件不存在,如何成功运行数据stream任务

我有一个导入excel文件的数据stream任务。 我不能使用每个循环来通过Excel文件,因为每个Excel文件的元数据是完全不同的。 所以在数据stream任务中,我有10个独立的源文件,并使用联合组件将它们合并,然后将其导入到SQL。 我现在面临的问题是有时某些我正在导入的excel文件可能不存在,所以当我的软件包运行时,它会失败,因为文件不存在。 那么有没有什么办法让我创build一个检查,允许程序包跳过不存在的源文件并运行其余的源文件? 我正在使用SSIS 2005。

具有JOIN的SQL / Excel查询参数

我正在学习如何在excel驱动的SQL查询中使用参数(实际上我仍然在学习SQL)。 感谢帮助我构build查询以根据需要修改结果的好人,我想要更进一步,并在Excel中提供参数以过滤结果。 这是我的查询: SELECT fun.FUNCTION_ID ,COALESCE(fun.parent_function, fun2.function_id) as PARENT_FUNCTION ,fun.MODULE_ID ,fun.DESCRIPTION ,fun.FUNCTION_PURPOSE ,fun.PB_OBJECT ,sec.GROUP_ID ,sec.ACCESS_LEVEL from MODULE_FUNCTION fun LEFT JOIN MODULE_FUNCTION fun2 ON fun.function_id = fun2.function_id AND fun2.function_id IN (SELECT parent_function FROM MODULE_FUNCTION) LEFT OUTER JOIN FUNCTION_SECURITY sec ON fun.FUNCTION_ID = sec.FUNCTION_ID AND sec.GROUP_ID = 'GROUP_NAME' 我需要做的是让团队成员在Excel工作表中运行这个查询,并在第二个JOIN中为“GROUP_NAME”提供他们的组名。 不幸的是,我不能使用语法WHERE (sec.GROUP_ID = ?) ( 在这里find ),因为我需要从MODULE_FUNCTION表中提取所有结果,并且只有在提供的组匹配时才从FUNCTION_SECURITY表插入结果如果不匹配,则为空)。 当我试图在最后使用AND […]

使用Cursor在SQL Server中插入表

我想导入一个Excel文件到SQL,该文件有3列:框 – 代码 – 有效性我正在使用以下查询 USE [Libatel] GO SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER PROCEDURE [dbo].[GetDataExcel] as DECLARE c CURSOR FOR select Box, Code , Validity FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0;Database=C:\Barcodes.xlsx;HDR=YES', 'SELECT Box, Code , Validity FROM [sheet1$]') declare @Code as bigint declare @Box as bigint declare @Validity as date begin open c […]

四分位间距 – 低,中和高

我正在尝试根据可以是任意长度的一系列数字来计算四分位间距 1, 1, 5, 6, 7, 8, 2, 4, 7, 9, 9, 9, 9 我需要从这个四分位数范围内解决的问题是: 上四分位 中位数 下四分位数 如果我将以上数组数组转换为Microsoft Excel(列A:M),那么我可以使用下列公式: =QUARTILE.INC(A1:M1,1) =QUARTILE.INC(A1:M1,2) =QUARTILE.INC(A1:M1,3) 为了得到我的答案: 4 7 9 我现在需要在SQL Server或VB.NET中计算出这三个值。 我可以用任何一种语言获取任何格式或对象的数组值,但是我找不到像Excel所具有的QUARTILE.INC函数那样的函数。 有谁知道这可以在SQL Server或VB.NET中实现吗?

在VBA中正确使用MSSQL“去”

我即将运行一个我使用MSSQL编程的批处理,如下所示: create function xy ( ….. end go create function2 xy ( … end go 然后,我将它保存在一个文件中,我的macros将它读入一个string,并用ADO尝试运行。 不幸的是,所有的时候我得到以下错误信息:'去'附近的语法不正确。 我一直在阅读,只发现解决scheme分裂批处理,但我真的不想要,因为我有一个stringvariables。 我在vba中的连接string如下(首先是公共声明的variables): Public conn As ADODB.Connection Public rs As ADODB.Recordset Public cmd As ADODB.Command Public sConnString As String On Local Error GoTo err sConnString = "Provider=SQLOLEDB.1;Data Source=localhost;" & _ "Initial Catalog=" & database & ";" & _ "Integrated […]

SSIS Excel错误列

我正在导入一个excel文件并从中获取数据。 在less数string列中,有些行的值为#VALUE! 。 我如何过滤SSIS中的这些行? 我已经尝试检查NULL值,以及检查该行的列是否等于#VALUE! ([ALT_TYPENAME] == "#VALUE!") 但是,行通过并且根本不被过滤。 是否有可能过滤这些? 列被导入为DT_STR。

如何在Excel中更改date以便date在SQL查询上运行?

目前,我有一个Excel工作表,其中我input一个开始date和结束date将转到VBA代码,并在SQL查询input它。 我目前遇到的问题是我收到一个错误: ORA-01843不是一个有效的月份,因为Excel导入的date为05/01/2016 ,查询需要为05-may-2016 。 我如何改变? 以下是开始和结束date的代码: startDate = Worksheets("Sheet1").Range("B4").Text endDate = Worksheets("Sheet1").Range("B6").Text dbConnectStr = "Provider=msdaora;User Id=" & Uname dbConnectStr1 = "Provider=msdaora;User Id=xxendur ;Data Source=" & DSN Set Sql.ActiveConnection = objmyconn Sql.CommandText = "select system_date from syit_act_log where system_date between`enter code here` 'startDate' AND 'endDate' and action_id = 15 and log_desc not like '%svc_openlink_p%' order […]