Tag: sql server

数据连接刷新; 一个相同的数据连接不

我有一个包含两个工作表的电子表格,这两个工作表都包含一个由查询SQLServer数据库的数据连接填充的表。 据我所知,两个数据连接是相同的。 一个表可以刷新,但刷新另一个表会提示错误“我们无法刷新连接'audbbicube compass3',表'compass3 Query'可能不存在。 两个连接属性中显示的设置除了一个刻度框外是相同的。 两者的连接string是: Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Data Source=audbbicube;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=AU-H7PYJX1;Use Encryption for Data=False;Tag with column collation when possible=False;Initial Catalog=ion 两者的命令types是SQL和命令文本都是: exec sp_letters_from_church 'CH2BAR', 'Menai', '2013-12-31', 5 身份validation都是Use the authenticated user's account 。 工作的数据连接有Enable background refresh 。 在无法使用的连接设置对话框中, Enable background refresh未勾选,并显示为灰色。 Q1:什么会导致Enable background refresh变灰? 问题2:为什么会导致数据连接无法刷新? 问题3:如何解决?

Excel源和目标SQL Server表中的SSISdynamic列映射

我有一个要求,我需要在SQL Server表中转储我的Excel数据。 excel文件可能会有所不同(每次不同的列号),并且对于每个excel源文件,每次在SQL Server中都必须创build一个新表。 我尝试过使用SSIS任务来处理input/输出列之间的映射,必须在包中进行预定义。 另外,在执行“OLE DB目的地”任务之前,我正在转储数据的目标表必须存在。 为了克服一些限制,我没有做什么解决方法: 在我的数据库中创build了一个带有50列的示例表(因为这是我在源代码excel中的任何时间点上可以使用的最大列数)。 执行包之前,我拿一个样本表的副本给它一个名字,因为我需要为每个源有不同的表。 dynamic传递Excel源文件通过C#代码和SSISvariables打包。 由于我的初始映射是在包中的50个input/输出列之间,当下一个excel到达包的时候没有更less。 的列,包执行失败。 我正在通过C#代码运行包,也是当我独立运行这个包在BIDS传递SSISvariables值本身,它失败与无效列引用错误。 我必须通过代码来运行这个包,我不能每次都在失败时重新映射它。 我不能在这个论坛上粘贴Package的快照。 它是一个简单的包,有2个任务,即“Excel来源”和“OLE DB目的地”。 我面临的唯一问题是dynamic映射包。 rest一切工作正常。 这个你能帮我吗。 提前致谢!! using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using Microsoft.SqlServer.Dts.Runtime; namespace SSRSReports { public partial class About : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { btnpkg.Visible = […]

在使用SSIS将其加载到目标表之前,如何在excel中合并列标题名称

有一个Excel表格(这个屏幕截图只是一个部分,它显示了800列以上的前5列!),下面提到的格式。 列名在第4行。需要使用SQL SERVER INTEGRATION SERVICE(SSIS)将其加载到表中之前,将列名作为第3列和第4列的组合。如何导入文件以满足要求? 目标表中所需的列名示例: – [Plcn Pyll SUM 00BASELINE] [Plcn Pyll SUM 04QUARTER_2014_15_Q1] [Plcn Pyll SUM 08QUARTER_2014_15_Q2] 如何导入excel文件以符合要求? (SSIS平面文件连接pipe理器有一些限制吗?那么这个必须在excel vb级别处理?) 如果我将excel转换为txt并尝试使用平面文件连接pipe理器导入,则显示“ there is more than one data source column with same name ”。 00BASELINE在800栏标题中出现了00BASELINE 。

使用多个属性列优化数据透视表

我正在使用Excel数据透视表为用户提供访问存储在SSAS多维数据集中的客户数据,并发现数据刷新时间过长的问题。 数据透视表显示每个客户的总收入,并在行(来自两个单独的维度)上包含以下内容: 客户ID 顾客姓名 电话 电子邮件地址 指示电子邮件地址是否/何时被弹回的date 地址栏1 地址线2 地址线3 地址线4 地址线5 指示地址是否失败的date 几个T / F指标 …和财政年度的专栏。 您会发现大多数客户属性并不是真正的分组字段:只有客户ID和年份需要数据聚合。 但以这种方式使用SSAS和Excel似乎需要将所有13个属性视为分组列,因此有13个级别的聚合。 因此,对于大约20,000个客户的子集,刷新数据透视表可能需要30分钟。 我认为大部分时间都是在SSAS而不是Excel方面,但是我不知道这是因为MDX Excel生成的是垃圾还是多维数据集的结构负责。 这怎么可以优化?

SSIS:“错误:expression式的结果”@ …不能写入属性“

我一直在尝试过去10个小时来解决以下问题: 我有一个ForEach循环容器,枚举我的控制stream中的Excel文件名。 在ForEach循环容器中,我有一个将数据导入到Sql-Server的Excel Source。 这连接到派生列转换使用User :: FileName作为expression式连接到一个OLE DB命令映射到User-FileName到Report_Date(Excel文件名称包含报表date)列在Sql-Server中相关的行。 以下是我的控制stream的片段: 我不断收到以下exception: Error: The result of the expression "@[User::FileName]" on property "\Package\Foreach Loop Container 1\Data Flow Task.Properties[[Derived Column].[Derived Column Output].[Derived Column 2].[FriendlyExpression]]" cannot be written to the property. The expression was evaluated, but cannot be set on the property. 我试过了我所知道的一切,无法摆脱它。 用尽选项。 我错过了在这个过程中的一个步骤?

Excel,SQL – 将select标题行更改为列,并插入每列的值

我希望有人能帮帮忙。 我有一个excel文件,上面有几百个项目,显示样式的颜色/大小和数量级别。 但我需要采取相应的标题大小,并与样式和颜色以及它的数量级别相匹配。 然后将其格式化为每行, 然后复制与每列对应的样式,颜色,长度和价格。 我有Excel和SQL,如果一个更容易与另一个工作。 所以基本上拿这个: +——–+———-+——–+——-+———+——–+——–+——–+——–+——–+———+———+———+———+———+———+———+———+———+———+———+———+ | STYLE# | COLOR | LENGTH | Price | Size 00 | Size 0 | Size 2 | Size 4 | Size 6 | Size 8 | Size 10 | Size 12 | Size 14 | Size 16 | Size 18 | Size 20 | Size 22 […]

使用SSMS将多个.xlsx文件导入到SQL Server(基本版,不是企业版)

正如问题所述,我试图将大约2000个单工作表Excelfile upload到一个SQL Server数据库。 数据库已经使用其中一个excel文件作为模板,并且所有的文件都有完全相同的布局。 我希望能够像从文件中复制其余数据一样简单。 有没有办法一次性移动所有2000个,而不必使用SSMS导入向导单独上传它们。 信息:Excel文件的位置 – C:\ MyServer \ MyUser \ Desktop \ Nominations 数据库将每个Excel表添加到 – dbo.MyDatabase $ 使用MS SQL Server Management Studio。 不能添加布局图(对于StackOverflow来说太新了),但想象一下12列的数据库,你在那里。 这是一个非常简单的数据库。 我不相信在向导中有多个文件选项,除非我升级到企业版,在我用这些文件完成概念validationtesting之前,这个工作不会被允许。 任何帮助非常感谢。 谢谢,伙计!

需要帮助来使用SQLCMD在文本文件中执行SQL

我想加载一个Excel文件( .XLS )到我的数据库中的表。 数据库是在我自己的电脑上,我有SQL服务器08中的sa帐户。该Excel文件包含 – Id Name 1 Dog 2 Cat 3 Fish 带有SQL代码的文件( demo.txt ): insert into [MyDb].[dbo].[relative] select * from openrowset('Microsoft.Jet.OLEDB.4.0','Excel 8.0; Database=C:\My Temp Files\Excel','select * from [sheet1$]'); SQLCMD代码: sqlcmd -S MyPc\SQL2008 -i "C:\My Temp Files\SQL\demo.txt" sqlcmd的错误: 消息7308,级别16,状态1,服务器MyPc \ SQL2008,第1行 OLE DB提供程序“Microsoft.Jet.OLEDB.4.0”不能用于分布式查询,因为提供程序configuration为以单线程单元模式运行。 修复(这并不能解决问题)的上述错误http://blog.sqlauthority.com/2010/11/03/sql-server-fix-error-ms-jet-oledb-4-0-cannot-可使用的换分布式查询,这是因为最提供商正在使用的对运行中的公寓模式/ sp_configure 'show advanced options', 1; GO RECONFIGURE; GO sp_configure 'Ad […]

SqlBulkCopy与列映射之外的C#边界exception

我遇到一个问题,而使用SqlBulkCopy将一些数据从Excel复制到SQL Server表。 基本上,我需要将Excel文件的一些行的所有内容复制到表中。 我有这个工作使用直SqlBulkCopy没有列映射,但只有修改后的Excel文件(删除当前未使用/空列)。 由于我们的工作stream程,我们需要Excel文件保持不变,所以我尝试使用列映射。 (我宁愿避免使用临时表来工作,因为我的SQL技能不是那么好) 我的代码下面的作品完美,除了它不复制最后的11列。 如果我增加最后的数字(213)到224来尝试包含这些,我得到一个IndexOutOfRangeException错误。 数据读取器说有一个字段数为212(这是多less非空白列,但实际总的列数是224.如果我尝试没有列映射,数据closures(右)由12列组成。 using (DbConnection excelConnection = factory.CreateConnection()) { SqlConnection sqlConn = new SqlConnection(sqlConnectionString); excelConnection.ConnectionString = connString; using (DbCommand command = excelConnection.CreateCommand()) { command.CommandText = "SELECT * FROM [Master List$A18:HD" + (17 + cusipcount) + "]"; sqlConn.Open(); excelConnection.Open(); using (DbDataReader dr = command.ExecuteReader()) { using (SqlBulkCopy bulkcopy = new […]

如何将excel表导入到asp.net中的sql数据库

我试图从xls格式文件保存数据在sql数据库。我已经尝试了下面的代码,但它显示错误,外部表格不是在预期的格式。任何人都可以帮助我如何保存数据从xls格式文件到数据库? code: protected void Button1_Click(object sender, EventArgs e) { string sheet1 = "asdf"; string path = MapPath("~/dataWorldcup/asdf.xls"); OleDbConnection oconn1 = new OleDbConnection(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;"); OleDbCommand ocmd = new OleDbCommand("select * from [" + sheet1 + "$]", oconn1); SqlConnection sqlcon = new SqlConnection(ConfigurationManager.ConnectionStrings["consed"].ConnectionString); oconn1.Open(); sqlcon.Open(); OleDbDataReader odr = ocmd.ExecuteReader(); SqlBulkCopy sqlBulk […]