Tag: sql server

Excel工作簿中SQL数据连接的单元格格式

我的工作有一些工具,需要我们通过Excel工作簿批量上传数据,所以我试图将我的SQL结果embedded到我的文件中以节省我一个步骤。 我创build了数据连接,但还没有完全弄清楚“定义”框中的代码格式。 现在我有: select custcontnum from "CONTACT"."dbo"."Incont" where custcode='SNH' and username = '[Custcontnums$G2]' 但它是空白的。 (如果我在单引号之间自定义用户名标准,它确实有效)最后,我想为用户名标准创build一个“in”语句,例如: select custcontnum from "CONTACT"."dbo"."Incont" where custcode='SNH' and username in ('[Custcontnums$G2]','[Custcontnums$G3]','[Custcontnums$G4]') Excel的数据连接function中的Excel参考的正确格式是什么?

不能在Excel中使用传递查询

我已经search了多个论坛好几天了,但仍然停滞不前。 希望有人能在这里说一些东西。 我越来越沮丧MS Office和本机SQL之间的SQL语法差异,我已经相信使用传递查询将允许我使用本机SQL。 我已经尝试了来自各种论坛的多个build议来创build一个通过查询,但我仍然面临在我的查询中的Office(语法)错误。 下面是我的代码的一个简单的例子,由于ISNULL语法,Excel / VBA不喜欢。 请注意,这不是ISNULL本身的问题,我知道如何解决这个问题。 这仅仅是一个例子。 问题是它应该在原生SQL中工作(并且在SQL Server Management Studio中)。 为了完整起见,我正在使用: SQL Server 2014 MS Excel 2013 Microsoft DAO 3.6对象库 我怀疑连接string或DAO对象库可能是罪魁祸首,但我已经尝试了多个其他结果相同的结果。 完整的示例(在OpenRecordSet失败)代码如下。 我会永远感激任何可以提供的帮助。 谢谢,瑞安 Option Explicit Sub TestQuerySQL() Dim sqlConnect As String, dsnName As String, dbName As String, sqlString As String, db As Database, qd As QueryDef, rs As Recordset dsnName […]

如何在VBA中获取包括毫秒的date时间

我有一个VBAmacros(Excel VBA),我有一些代码查询SQL Server数据库字段。 该字段的types是datetime该字段的值包括毫秒。 如果我用ADO查询字段和logging集将给我字段值格式化,并没有毫秒位,例如SQLpipe理工作室查询时的实际字段值是2015-12-14 10:19:48.077但logging集值是14/12/2015 10:19:48 AM 我怎样才能得到实际的价值?

如何转换Datazen的Excel单元格?

为了学习Datazen我开始使用Excel表格,但是我遇到了一些问题。 我有一个名称列和值列如下所示: 但是当我把它导入数据时,数据变成: Datazen不会将数据识别为string,也不可能使用名称列创build图表。 我试图将格式单元格更改为文本,但没有效果,有人可以帮助我? 谢谢

从列表框中select多个项目,使用excel vba在sql server中select存储过程

我在excel中有一个允许多个select的列表框,但我不知道如何将选定的项目传递给我的SQL Server stored procedure的单个参数。 说我想: select * from where field in ('selected', 'items', 'from', 'list', 'box') 任何想法如何在Excel中做到这一点与VBA?

显示自定义错误消息,如果数据types不匹配时,将excel文件读入数据库(在C#程序中)

我是新来的.NET,希望得到我的下面的场景一些build议: 情景:我有一个外部Excel文件,应该读取并使用C#加载到数据库中。 所以,为此我创build了两个表格: 临时表(在加载到最终表之前,从Excel文件中读取数据的临时表)。 最终表(包含validation的数据)。 在临时表中,我需要编写一个程序来validation数据types,并通过显示错误消息来提示用户(例如:excel列只包含数值,如果任何单元格包含该特定列中的文本/string,C#程序应显示消息(“文本不允许,请input数值”)。 为了达到上述目的,我想编写一个将临时表存储错误信息的存储过程,C#程序执行存储过程来读取临时表中的错误信息。 我通过将非数字/文本(“ABC”)值赋予数字列来尝试上述过程。 但是我没有收到一个错误信息,因为它是空的,而不是显示错误信息 OLEDB连接string: string STR_OLEDBCONNECTION = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source='" + PATH + "';Extended Properties='Excel 12.0 Xml;HDR=Yes';IMEX = 1"; 下面是SQL存储过程将错误消息读入临时表。 USE [EXCEL_DATABASE] GO CREATE PROCEDURE [dbo].[spexcel] AS BEGIN –SET NOCOUNT ON added to prevent extra result sets from –interfering with SELECT statements. SET NOCOUNT ON; DECLARE @count int IF OBJECT_ID('tempdb..#TempResult') […]

SQL Server数据库到Excel数据透视表

我有一个SQL Server数据库与两个表(还有更多,但这是为了这个问题的目的)。 表项目 : ProdID int ProjectName String 表任务 : TaskId int TaskName String ProdID FK to Projects.ProdID 我想使用这两个表在Excel中创build一个数据透视表。 我能够使用“连接数据源 – > SQL Server数据库 – >使用表/导入关系”,并能正常工作的连接。 但是,我找不到从数据透视表视图中删除FK的方法。 基本上用户可以在Pivot中的Tasks表中看到并使用ProdID TK,并且将整个事物拧紧。 我尝试使用视图,但是删除关系和FKs不起作用。 有任何想法吗 ? 谢谢。

如何通过ADO VBA提供更新存储过程的十进制input参数(可以为空)

我正在尝试在Excel中创build一个模板,以便客户批量更新SQL Server数据库。 棘手的部分是一些数字列,例如,我正在testing的是Estimated_Amt 。 值可能是空的,我试过,还是不知道是否为空,如何通过这个值来更新存储过程。 以下是我如何设置参数: Estimated_Amt = .Cells(iRowNo,8) If (.Cells(iRowNo, 8) = "") Then cmd.Parameters.Append cmd.CreateParameter("@Estimated_Amt", adVarChar, adParamInput, DBNULL.Value) Else cmd.Parameters.Append cmd.CreateParameter("@Estimated_Amt", adVarChar, adParamInput, CStr(Estimated_Amt)) End If 我分别尝试了AdDouble和AdDecimal ,并且没有成功捕获空值或空值,并且使用AdVarchar仍然无法正确工作 而调用程序部分如下: cmd.CommandText = "SP_RIBulkyUpdate @CaseNumber = " & CaseNumber & ", " & _ "@Estimated_Amt = " & Estimated_Amt 任何build议正确设置input参数? 谢谢。

访问VBA复制从logging集范围对象错误-2147417856

我的数据库使用ODBC连接来连接到SQL服务器。 访问代码通过一个10万年的SQL表(大约570万行)运行,并以10,000年的数据增加,然后在Excel中通过一个macros运行,然后重复10k年的下一个增量。 第一个一万年的时间大约有420k +行出口到excel下一个一万年(10,001-20,000年)有大约450k +行 假设每10万年逐渐增加3万行, 当达到60,001-70,000增量有时代码将废话并给出一个 '从logging集对象范围方法复制失败代码-2147417856'错误 解决方法是点击debugging,然后点击播放button,然后代码继续。 因为这个修复工作,我的印象是访问越来越重处理,只是胡乱随机(我不知道还有什么可能是错的) 我试图安装一个error handling修复程序来重复发生错误的代码部分,并且error handling程序发现错误,但错误仍然发生。 更新:在我input之前,我进入了正在吐出的Excel文件,并在macros内按Ctrl +暂停,然后点击播放button,然后再次按Ctrl +暂停然后点击播放button。 然后我按下debugging,然后单击编译VBA项目,然后保存工作簿。 然后再次访问时,没有错误。 老实说,我不知道发生了什么,所以任何想法或修复这将是有益的。 (虽然好像我已经解决了这个问题)

在Asp.Net中导入Excel工作表

我需要问与父母关系导入Excel表单问题。 下面我有一个示例表 那么我需要导入这个表格就像这种格式 – > IndustryName | IndustryCode | CategoryName | CategoryCode | CategoryValue | SubCategoryName | SubCategoryCode | SubCategoryValue IndustryName1 IndustCode CatName CatCode CatValue SubCatName SubCatCode SubCatValue IndustryName1 IndustCode CatName CatCode CatValue SubCatName SubCatCode SubCatValue 在子分类行上在SubCategoryCode.Its固定的前面有两个空格。 任何人有一个想法,我怎么能做到这一点?