Tag: oledb

如何从Excel中读取超过255个字符的数据行

问题是如下所示设置DataSet时,默认情况下只读取电子表格单元格中的255个字符,并将它们放入表格中。 DataSet exData = new DataSet(); string connectionString = String.Format(ConnectionString, path); OleDbDataAdapter ex = new OleDbDataAdapter(ExcelQuery, connectionString); ex.Fill(exData); 我正在使用扩展属性= Excel 8.0和Microsoft.Jet.OLEDB.4.0,连接到Excel表没有问题。 从我的阅读来看,这是由于Jet.OLEDB提供者,我应该使用什么? 而且我可能无法更新到Jet的新供应商,有没有什么解决办法? 任何解决方法将被限制在不能直接修改Excel文档以包含两个单元或更多的数据超过255个字符。 谢谢。

将DataTable插入Excel使用Microsoft Access数据库引擎通过OleDb

今天我遇到了使用本网站上的OleDbConnection从Microsoft Excel文件读取数据的说明: OLE DB提供程序 这使我可以读取Excel文件中的所有数据: private const string EXCEL_CON = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};" + @"Extended Properties='Excel 8.0;HDR=Yes;IMEX=1;'"; public DataTable ExtractExcel(string fullFilename, string tableName) { var table = new DataTable(); string strCon = string.Format(EXCEL_CON, fullFilename); using (var xlConn = new System.Data.OleDb.OleDbConnection(strCon)) { ConnectionState initialState = xlConn.State; try { if ((initialState & ConnectionState.Open) != ConnectionState.Open) { xlConn.Open(); } […]

使用.NET从Excel中获取数据作为数据库

我想使用.NET从Excel文件中获取数据正在使用Excel文件,所以我无法打开它。 我所做的是使用OleDB作为数据源连接到它。 问题是我得到一个单元格的数据,但不是它的风格。 Excel中的date值在.NET中变为date时间格式,而在Excel中设置为货币的单元格在.NET中显示为整数。 使用OleDB从Excel中导出数据时,您不知道单元格是否包含date,货币等。例如,如果单元格设置为文本并包含从零开始的五位数字,则只会获得四位数字。 我正在寻找一种方法来获取数据,因为它会出现,如果你要在Excel中查看数据。 使用.NET 3.5和Excel 2007。

C#.Net,获取OLEDB提供程序版本

我需要识别已安装的OLEDB提供程序版本。 在阅读Excel文件之前。 我怎样才能做到这一点?

C#中带有OLEDB的Excel前缀字符在UPDATE中导致“标准expression式中的数据types不匹配”错误

当从C#使用OLEDB更新Excel文件时,如果原始文件具有隐藏的PrefixCharacter(在我的情况下是撇号),则会出现错误“条件expression式中的数据types不匹配”。 如果我从原始文件中的单元格中删除撇号,我的应用程序按预期工作,数据更新没有任何错误。 除了在处理文件之前手动删除PrefixCharacter之外,如何解决此问题的任何build议?

为什么在更新Excel单元格多次时收到OleDbException?

我正在使用下面的代码来更新Excel文件中的单元格。 public bool WriteChange(string Filename, string SheetName, string Cell, string Value) { if(!System.IO.File.Exists(Filename)) { throw new System.IO.FileNotFoundException("File \"" + Filename + "\" could not be found"); } bool result = false; string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Filename + ";Mode=ReadWrite;Extended Properties=\"Excel 8.0;HDR=NO;\""; string SQL = "UPDATE [" + SheetName + Cell + ":" + Cell […]

OleDbDataAdapter不从服务器中的Excel中读取所有数据但在本地系统中正常工作

我有问题使用C#从Excel中读取数据(它包含超过30,000行)。 当我在本地系统testing它工作正常,即它复制从Excel中的所有行,但是当我部署和运行在生产服务器,它只能读取约12,000行)。 我也尝试过使用BulkCopy,但是也一样。 它是否必须做任何与networking服务器(我的networking服务器是Windows Server 2008)? 请帮助我。 谢谢 protected void ImportFromExcelToTempCompetitionTable(string filename) { string strConn = "Provider=Microsoft.ACE.OLEDB.12.0; " + "Data Source=" + filename + ";" + "Extended Properties=Excel 12.0"; OleDbDataAdapter cmdOle; cmdOle = new OleDbDataAdapter("SELECT [StringColA], [StringColB], [NumberCol1], [NumberCol2] from [XYZSheet]", strConn); try { Boolean blnSuccess = false; DataSet ds = null; ds = new […]

PowerShell | OLEDB | Excel | 无法从第三方应用程序创build的XLSX中读取数据

**更新(2012.12.13) – 增加示例代码,input格式,输出示例 我已经为此奋斗了几天了,现在我已经没有想法了。 我已经testing了一个脚本(并且可以在我之前上传,稍后再上传),以对付多个XLSX文件。 我有连接stringfunction,parsing我需要的数据等… 问题是,当我尝试处理我的input文件(从第三方报告应用程序生成)时,不从工作表中读取数据。 如果我在Excel中打开并保存input文件(没有格式变化,没有数据input/删除,根本没有修改),input文件将处理和parsing所有数据。 我已经尝试在连接string中使用多个“扩展属性”设置,无济于事,包括HDR =是/否和IMEX = 1。 任何人都见过这样的事情吗? #inputFile_original.xlsx will not parse the data from the worksheet #inputFile_original_reSaved.xlsx parses the data without any issues $fileName = "inputFile_original.xlsx" #$fileName = "inputFile_original_reSaved.xlsx" $filePath = ".\OLEDB\test\" #Build the connection string $ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" $ConnectionString += (Join-Path -Path $filePath -ChildPath $fileName) $ConnectionString += […]

查询定义在XLSX文件中的位置

使用以下自定义查询创buildxlsx文件(从typicode.com的jsonplaceholder服务中加载数据) let Source = Json.Document(Web.Contents("https://jsonplaceholder.typicode.com/posts")), #"Converted to Table" = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error), #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table", "Column1", {"userId", "id", "title", "body"}, {"userId", "id", "title", "body"}) in #"Expanded Column1" 并解压缩它我会期望上述string(查询定义)以某种forms在结果文件夹结构中的某处find。 目标是以编程方式replaceURL,但不知何故,我能find的唯一查询定义是 <connection id="1" keepAlive="1" name="Query – posts" description="Connection to the 'posts' query in the workbook." type="5" refreshedVersion="6" background="1" saveData="1"> <dbPr connection="Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=posts;Extended […]

在C#中创build一个自定义ODBC / OLE驱动程序

有谁知道如何最好在C#中创build一个ODBC或OLE驱动程序? 我想要做的是创build一个自定义数据源,我可以在Excel和Access中使用。 或者想想另一种方式如何做到这一点? 预先感谢您的回应!