Tag: ms access

使用OLEDB将AccessFile从Stream读取到DataSet

我使用Oledb读取AccessFile(.accdb)到DataSet,我不知道表名或列,常规实现是: public void GetAccessDB(string filepath){ this.ConnectionString = “Provider=Microsoft.ACE.OLEDB.12.0;Data Source = ” + filepath; // get Table Names this.TableNames = new List(); using (System.Data.OleDb.OleDbConnection oledbConnection = new System.Data.OleDb.OleDbConnection(this.ConnectionString)) { oledbConnection.Open(); System.Data.DataTable dt = null; dt = oledbConnection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null); foreach (System.Data.DataRow row in dt.Rows) { string strSheetTableName = row[“TABLE_NAME”].ToString(); if (row[“TABLE_TYPE”].ToString() == “TABLE”) this.TableNames.Add(strSheetTableName); } oledbConnection.Close(); } […]

Acess SQL查询缺少更多必需参数

在Web项目中,我正在尝试执行以下查询: SELECT ItemName as Name, ItemPicture as Picture, ItemHeroModif as Assistance, ItemTroopModif as Charisma, HerbCost as Herbs, GemCost as Gems FROM Item WHERE ItemId = @value0 有了断点,我可以看到我附加了@value0的值, 2 。 尽管如此,我收到以下错误: 没有给出一个或多个必需参数的值。 我知道这个错误通常是由于错误的SQL语法而产生的。 我做了什么有什么不对吗? 编辑 : 附件代码: var madeForCommand = “SELECT ItemName as Name,ItemPicture as [Picture],ItemHeroModif as Assistance,ItemTroopModif as Charisma, HerbCost as Herbs, GemCost as Gems […]

首先检查数据库单元是否为空

我通过C#访问MS Access 2007数据库,每当我尝试读取空单元格时,我都会收到exception。 具体来说,我正在尝试读取可能会或可能不会为空的“日期/时间”单元格。 我正在使用OLE DB ,并填充了一个DataSet。 这些条件都不起作用: DataSet dataSet = GetDataSet(); DataRow row = dataSet.Tables[0].Rows[0]; DateTime time = new DateTime(); time = (DateTime)row[5]; // Exception thrown 在尝试分配单元格之前如何检查单元格是否为空? 这些都不起作用: if(row[5] == null) ; if(row[5] == DBNull) ; if(row[5] == (String)””) ; 编辑:我应该提到:当我调试时,它说行[5]等于“System.DBNull”,但是当我尝试“if(row [5] == DBNULL)”时出现错误。 错误说“DBNULL是一种类型,在给定的上下文中无效”。

无法加入备注,OLE或超链接对象

数据库:MS-Access 这些是我的数据库表和列。 Table: proje Field Name Type ————- ———————– id Integer(Auto Increment) projeAdi Long Text sirketAdi Long Text Table: calisan Field Name Type ————- ———————– id Integer(Auto Increment) gun Date/Time isTanimi Long Text kulID Integer basSaat Date/Time bitisSaat Date/Time proje Long Text istipi Long Text SQL查询: sorgu.Connection = baglanti; baglanti.Open(); sorgu.CommandText = “SELECT * FROM […]

动态创建SQL插入语句时出错

我可以知道我的陈述有什么问题吗? 我收到语法错误。 一直试图找出错误的一整天。 🙁 cmd.CommandText = “INSERT INTO LogIn(Username,Password) VALUES(‘” + AddUsernameTextBox.Text + “‘,'” + AddPasswordTextBox.Text + “‘)”;

C#中使用MS Access的标准表达式中的数据类型不匹配?

嗨,我尝试将数据从我的表单保存到MS Access数据库。 有13个字段要保存,但是当我点击此行显示的保存按钮错误时top.ExecuteNonQuery(); Data type mismatch in criteria expression 。 这是我的代码尽可能帮助我 OleDbConnection conn = new OleDbConnection(“Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:/Srihari/Srihari/Invoice.accdb”); conn.Open(); // to save top column in invoive int invoicenumber = Convert.ToInt32(TXE_Invoice_Number.Text); string terms = CBL_Terms.Text; DateTime date = CBL_Date.DateTime; string ourquote = TXE_OurQuote.Text; string salesperson = CBL_Sales_Person.Text; string customername = CBL_Customer_Nmae.Text; string oderno = CBL_Order_Number.Text; string invoiceaddress […]

使用IN运算符和存储过程参数

我正在ASP.NET 2.0中构建一个网站,我正在处理的页面的一些描述:ListView显示来自我的访问数据库的一个表(post),以及一个用于过滤行的多选模式的ListBox(按论坛名称,值= forumId)。 我正在将ListBox选定的值转换为List,然后运行以下查询。 参数: OleDbParameter(“@Q”,list.ToString()); 程序: SELECT * FROM sp_feedbacks WHERE forumId IN ([@Q]) 问题是,它不起作用。 即使我使用字符串1,4,“1”,“4”或“1,4”从MSACCESS 2007运行它,我也得到零结果。 只有一个论坛被选中时,查询才有效。 (例如在(1)中)。 解? 所以我想我可以使用WHERE和许多OR,但我真的想避免这个选项。 另一个解决方案是将DataTable转换为列表然后使用LINQ过滤它,这似乎是非常混乱的选项。 在此先感谢BBLN。

选择数据集的所有表行,该课程等于2个特定值

我有一个数据库,其中有一个名为MainData的表。 数据格式如下: ID Lesson Time Score 1 C 165 4 1 E 190 3 1 H 195 3 1 I 200 4 2 A 100 2 2 B 150 5 2 D 210 2 2 E 110 4 3 D 130 5 3 E 190 5 3 H 210 4 3 I 160 4 3 […]

如何从C#和SQL创建受用户名和密码保护的MS Access 2007文件?

我不太了解OleDB,我需要一些有关如何创建MS Access 2007文件作为密码保护的信息。 这是一段使用User Id=admin; Password=的代码User Id=admin; Password= User Id=admin; Password=但它在尝试保存说法时给出了错误: Cannot start your application. The workgroup information file is missing or opened exclusively by another user. Cannot start your application. The workgroup information file is missing or opened exclusively by another user. 编辑:现在我有错误: Cannot open the MS Office Access database engine workgroup information file […]

C#将MS Access数据库同步到sql server

我试图在C#中设置一个同步例程,以便将数据从ms访问数据库发送到sql server。 MS Access不是我的选择它只是它的方式。 我能够查询MS Access数据库并获取OleDbDataReader记录集。 我可能会读取每个单独的记录并将其插入到SQL Server中,但它似乎非常浪费。 有一个更好的方法吗。 我知道我可以在MS Access链接到SQL Server并轻松执行更新,但这是为最终用户,我不希望他们搞乱访问。 编辑:只是看看SqlBulkCopy我认为如果我将我的结果导入DataRow []可能是答案