Tag: oledb

excel表格中的超级脚本不在asp.net中的数据集中

即时通讯尝试导入Excel表格值文本框。 在数据集超级脚本值不会来。 像x到2的幂。 它在数据集x2到来我需要得到超级脚本,因为它是在数据集 下面是从Excel中获取值的代码 string excelConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path1 + ";Extended Properties=Excel 12.0;Persist Security Info=False"; //Create Connection to Excel work book OleDbConnection excelConnection = new OleDbConnection(excelConnectionString); //Create OleDbCommand to fetch data from Excel OleDbCommand cmd = new OleDbCommand("Select [Answer],[Question],[Option1],[Option2],[Option3],[Option4],[Solution] from [Sheet1$]", excelConnection); OleDbDataAdapter da = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); […]

在Excel和VB.Net之间input数据

创build一个应用程序来运行jar头查询。 查询使用Excel工作表的forms使用最终用户提供的input数据。 事先知道所需的input列数据types,我创build了types化的数据表对象。 如何从Excel导入时validation提供的数据是否正确input? 我的查询似乎将数字数据转换为string,以适应我的types的数据表。 我不想要这个,我想在这种情况下抛出一个错误。 对于包含多种types数据的input列,查询也会将less数types转换为空值。 这样可以禁止types表中的空值, 除非查询经常返回几个额外的空值行,即使在正确types的input数据表中也是如此。 下面的代码…如何validationexcel数据严格遵循架构? Dim strInputData As String = "Desktop\testfile.xlsx" Dim strCon As String = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strInputData & ";Extended Properties=""Excel 12.0 Xml;HDR=YES"";" Dim connection As New OleDb.OleDbConnection(strCon) Dim command As New OleDb.OleDbCommand command.Connection = connection Dim inputDataSQL As String = "Select [Member ID], [Carrier ID] from [Sheet1$]" […]

OleDB和混合Excel数据types:缺less数据

我有一个Excel工作表,我想读入一个数据表 – 除了Excel工作表中的一个特定列以外,一切都很好。 “ProductID”这一列是像##########和n#########这样的值的混合。 我试图让OleDB自动处理所有东西,通过读取到数据集/数据表中,但是像' n###### '这样的'ProductID'中的任何值都丢失,忽略并留空。 我尝试通过使用datareader循环每一行手动创build我的DataTable,但具有完全相同的结果。 代码如下: // add the column names manually to the datatable as column_1, column_2, … for (colnum = 0; colnum < num_columns; colnum ++){ ds.Tables["products"].Columns.Add("column_" +colnum , System.Type.GetType("System.String")); } while(myDataReader.Read()){ // loop through each excel row adding a new respective datarow to my datatable DataRow a_row = ds.Tables["products"].NewRow(); […]

无法使用oledb更新Excel中的当前时间

我试图通过oledb连接使用下面的代码插入当前时间到Excel中的时间列,但是当我检查Excel插入的值是date格式。 值在excel中更新 – 1/0/1900 3:54:11 PM 预期价值 – 3:54:11 PM string currentTime = DateTime.Now.ToString("hh:mm:ss.fff tt"); string cmnd1 = "Create Table [" + currentDate + "] (TestCase char(100), ExecutionTime Time, Result char(20))"; string cmnd2 = "Insert Into [" + currentDate + "] (TestCase, ExecutionTime, Result) values ("+ "'" + tName + "',@dd,'" + result +"')" ; […]

替代Oleb DB导入Excel文件

也许有人可以帮我解决以下问题:我想导入一个Excel文件,并将列读入数据库。 到目前为止我使用了OleDB提供程序: string constr = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=Excel 8.0", path); using (OleDbConnection conn = new OleDbConnection(constr)) { conn.Open(); OleDbCommand command = new OleDbCommand("Select * from [Sheet1$]", conn); OleDbDataReader reader = command.ExecuteReader(); 有没有OleDB这样做的替代? 即时获取以下errormessage:“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。 我没有select在运行应用程序的环境中安装ole数据库。 谢谢

在Excel中创build链接到访问表

我正在使用OLEDB在C#项目中创build一个新的Excel工作表。 然后,我想使用SQL查询在Access数据库的表中添加指向某个数据的链接。 我知道它可能使用Microsoft Interop和QueryTables。 没有Interop,这可能吗?

“尝试重新连接时运行时错误”-2147467259(80004005)未指定错误“

我正在构build一个Excel电子表格,以使用自定义的Excel加载项从服务器获取一些数据(表格格式)。 之后,我需要修改该表,我认为最好的办法是使用ADODB连接到相同的Excel电子表格和SQL查询。 当我尝试使用与该Excel加载项连接之前使用的Microsoft ACE OLEDB 12.0驱动程序build立ADODB连接时,我总是得到相同的错误: 运行时错误“-2147467259(80004005) 未指定的错误 这是我用来build立ADODB连接的代码: Dim Conn As New ADODB.Connection Dim mrs As New ADODB.Recordset Dim sconnect As String Set Conn = New ADODB.Connection DBPath = ThisWorkbook.FullName sconnect = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" _ & DBPath & ";" & "Extended Properties=""Excel 12.0 Xml; HDR=YES"";" Conn.Open sconnect Conn.Close 如果我交换连接顺序,首先连接到我的Excel使用ADODB,然后连接到使用外接的外部服务器,我不会得到这个错误。 问题是,有时我已经使用不同的电子表格build立了Add-in连接,当我用ADODB连接打开这个电子表格时,错误被触发,因为如果我不重新启动Excel会话,Excel将保留该插件连接。 我已经尝试循环通过Excel连接,但它没有拿起插件连接: For i = […]

如何读取参考其他单元格的单元格的值?

我在sheet_B上有一个单元格, =IF(sheet_A!$E$66="OOO","XYZ","ABC") 我正在用OleDb读取它,如下所示 cmd.CommandText = "SELECT * FROM ["B"]"; 使用数据集,单元格值始终返回ABC,而不考虑sheet_A列值。 看来,这是因为阅读sheet B没有参考, 我怎么解决这个问题?

在SQL FROM语句中使用'*'来访问Excel单元格范围

我有一个将.xlsx文件转换为.csv文件的脚本,但此脚本使用Excel中的单元格区域来读取数据。 该脚本正在工作,但我希望扩大它,以防止可能的用户错误。 用于selectExcel单元格范围的查询(在SQL中 ): string query = "SELECT * FROM fileName"; 我想要做的是让脚本select一个“所有”种类的范围,以便如果用户更改文件名仍然工作。 喜欢这个: string query = "SELECT * FROM User_*"; User_将是每个文档的标准,但是在用户可以改变_之后。 在这种情况下,使用*不被接受为ALL,而且我似乎无法find可行的东西。

OleDb Exceljoin未命名的列从C#

我正在尝试使用ACE.OleDb在两个工作表之间进行连接。 列是未命名的,所以我不能在ON条件中使用列的名称。 使用的ConnectionString是: String.Format("Provider = {0}; Data Source = {1}; Extended Properties = \"{2}\" ", "Microsoft.ACE.OLEDB.12.0", file, "Excel 8.0;HDR=YES"); 用命名列这样的东西很好用: select * from [sheet1$] inner join [sheet2$] on [sheet1$].[ID] = [sheet2$].[ID] 有没有命名列ID的任何方式? 当然,我知道列的索引,它总是第一个。 我已经尝试过这样没有成功: select * from [sheet1$] inner join [sheet2$] on [sheet1$].[$A] = [sheet2$].[$A] 结果是: Syntax error in JOIN operation