Tag: sql server

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 = […]

将数据从Excel导入到MS SQL Server(使用导入和导出向导)时如何创build标识列?

我需要使用导入/导出向导将大量的数据从Excel导入MS SQL Server。 然后,我会继续每周导入更多的数据到同一个表中。 坏事是我的Excel数据没有一个标识列,用作主键。 可用的唯一select是使用2个string列作为主键,这不是一个好主意。 有没有办法在导入数据时sql server添加自动标识列(整数),有什么诀窍? 我更喜欢这样的列被自动添加,因为我需要每周将大量的数据导入到同一个表中。 我testing了几次(没有成功),并在互联网上寻找解决scheme,但没有find对这个特定问题的答案。 提前致谢!

将数据从SSMS移动到Excel时复制和粘贴错误

我试图从SSMS复制查询结果到Excel。 我select“复制与标题”并将其粘贴到Excel中。 我的数据集有9列。 当我将数据粘贴到excel中时,来自第9列的信息结束于第9,10和1列。看起来像这样: ABCDEFGHI -Column Heading ABCDEFGHII -Data I (blank row) 我已经查看了SSMS中的查询结果,这不是在原始数据中发生的。 当列F中的值为NULL时,不会出现列10中的附加行和信息。 到目前为止我已经尝试了以下几点: – 当我从查询中删除第9列时,复制并粘贴,第8列分布在8,9和1。 – 我还创build了一个全新的电子表格,确保清除任何格式,并尝试复制和粘贴。 – 我将查询结果保存为一个.csv文件并将其导入到Excel中。 我仍然有同样的结果。 – 我一次一个地复制列。 第八列中的信息结束于与下一行的其他列配对的两行。 因此,第8列中的每个项目成为另一个行向下偏移,直到第8列中的值比其他列更多。 如果列8中的值为NULL,则不会发生。 – 从查询结果中删除所有其他项目,以便只返回第8列和第9列的值。 第9列的所有信息都以第8列结尾,然后是空白行。 单独返回8,每个返回的项目结束在两行。 单独返回9,数据粘贴正确。 标题总是在正确的地方。 从我可以推测,第8栏的数据是这里的罪魁祸首。 数据types是允许空值的varchar(max)。 包含的信息格式如下(TCdate和时间,姓氏,名字)注释 将SSMS查询结果移动到Excel中,以便表格是我经常做的事情。 但是我从来没有遇到过这个结果。 希望我的解释足够彻底,所以有人可以告诉我如何纠正这个错误。 谢谢!

Python – 用Excel中的数据填充表MSSQL

我有一个xlsx文件,4列和68k +行。 我想把所有的数据放在MSSQL服务器的表中。 我做的。 def jb_treat_attributes(dicoval): conn = pymssql.connect(dicoval['MSSQL_erver'],dicoval['MSSQL_Login'],dicoval['MSSQL_Password'],dicoval['MSSQL_Database_DELTA']) cursor = conn.cursor() cursor.execute('TRUNCATE TABLE delta.Attribute') for row in load_workbook(dicoval['path_root']+'Delta/attributes/excel.xlsx').worksheets[0].iter_rows(): row = [cell.value.strip() if cell.value is not None else '' for cell in row] cursor.execute("INSERT INTO delta.Attribute VALUES (%s,%s,%s,%s)",(row[0],row[1],row[2],row[3])) conn.commit() conn.close() 它的工作,但有340的执行时间。 它存在一个更快的方法吗?

在ASP.NET的64位Windows平台上将Excel文件导入SQL Server的最佳方法是什么?

在64位Windows系统上将Excel文件导入到SQL Server的最佳/最stream畅的解决scheme是什么? 我特别的是从ASP.NET / C#页面导入Excel 97-2003文件到SQL 2005数据库。 导入数据会要求用户使用“模板”,所以数据看起来每次都是一样的。 以前系统使用Microsoft Jet OleDb 4.0进行这种导入,但是现在它已经转移到64位环境。 我知道Jet可以运行在64位,如果IIS运行在32位模式,但在我看来不是一个选项。 那么,这里有什么64位的替代品?

在没有在SSIS中安装excel的机器上使用Excel源代码

我制作了一个使用Excel源代码从Excel 2003文件中提取数据并将其插入SQL Server的SSIS包。 在生产机器上执行时,会出现“productleveltoolow”错误。 Excel未安装在服务器上。 这个错误是由于这个原因吗?

是否有可能像SSRS中的迷你图一样使用Excel 2010?

我想知道是否有可能在SSRS 2005报告中重复使用Excel 2010迷你图的想法。 我想显示一个报告,显示一系列产品在3个月内的价格波动。 我可以在3个月的时间内给出数字,但很难快速区分在数字海洋中发生的各种产品。

在SQL导入“NULL”行中导入excel

我有一个存储过程,导入不同格式的工作簿到数据库表,对他们工作,然后删除表。 这是填充查询。 SELECT IDENTITY(INT,1,1) AS ID INTO #test101 FROM OPENROWSET ('Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=WorkBook.xls',[WorkSheet$]) 一些电子表格似乎在底部创build一个空行。 我如何导入和忽略空行?

使用Microsoft Query和ODBC到SQL Server,复杂的查询

我有一个SQL Server中的视图,有点类似于下面的例子。 SELECT * FROM PEOPLE LEFT OUTER JOIN (SELECT ID FROM OTHER_TABLE WHERE SOME_FIELD = 'x' OR SOME_FIELD = 'y' OR SOME_FIELD = 'z') AS PEOPLE_TO_EXCLUDE ON PEOPLE.ID = PEOPLE_TO_EXCLUDE.ID WHERE PEOPLE_TO_EXCLUDE.ID IS null 麻烦: 我完全可以添加和修改“OR SOME_FIELD ='w'”无数次。 不过,我正在通过ODBC使用户在excel中调用这个视图。 用户需要能够根据自己的喜好来修改内部select,以匹配在当天/周/月/年/当时所限制的任何内容。 我需要这样做,让她可以轻松地限制在SOME_FIELD。 有没有人有如何做到这一点的build议? 理想情况下,我可以给她一个看法,她可以把逗号分隔的值列表,SOME_FIELD不能。 由于OTHER_TABLE中的人可能有多行,因此我不能仅限于此表。 例如,某人可能有SOME_FIELD ='x',但在SOME_FIELD ='s'的表中也有一行。 这个人应该被排除,因为他们有'x',即使他们也有''。 所以这就是为什么内部select是必要的。 谢谢你的帮助。

从我的数据库导出数据

我需要将我的sql-server数据库导出到第x天和第y天(我的数据库中包含date的字段)之间的excel文件。 我怎么能这样做?