Tag: ms access

更新数据库源后,如何让Visual Studio 2010刷新我的DataSet?

我已将新列添加到我已连接到Visual Studio 2010的现有MS Access 2010数据库中。 更新数据库后,“数据源”窗口和“数据集”没有新列。 我查看了诸如此类的答案: Visual Studio DataSet Designer刷新表 ,但使用“SELECT * FROM Reservations”配置默认查询(建议更新查询将导致表刷新)尚未刷新任何内容。 并且数据源和数据库资源管理器窗口上的内置“刷新”按钮尚未捕获更新(还有一个我希望很快就能使用的新表)。 我是如何(非编程地)更新我的DataSet的? 我有自定义绑定,不希望通过删除此数据源并“重新添加”它来手动重新创建它们。 我宁愿为我的新领域添加一些自定义绑定,并继续在这个项目上工作!

从MS Access DB中提取源代码

我有一个Access DB,我想从中提取源代码,所以我可以把它放到Source控件中。 我曾尝试使用主互操作程序集(PIA)提取数据,但我遇到了问题,因为它没有获取所有模块和表单。 代码中有140个表单和模块(不要问,这是我inheritance的遗留系统),但PIA代码只获取了91个。 这是我正在使用的代码。 using System; using Microsoft.Office.Interop.Access; namespace GetAccesSourceFiles { class Program { static void Main(string[] args) { ApplicationClass appClass = new ApplicationClass(); try { appClass.OpenCurrentDatabase(“C:\\svn\\projects\\db.mdb”,false,””); Console.WriteLine(appClass.Version); Console.WriteLine(appClass.Modules.Count.ToString()); Console.WriteLine(appClass.Modules.Parent.ToString()); int NumOfLines = 0; for (int i = 0; i < appClass.Modules.Count; i++) { Console.WriteLine(appClass.Modules[i].Name + " : " + appClass.Modules[i].CountOfLines); NumOfLines += appClass.Modules[i].CountOfLines; […]

为什么Crystal Report Viewer总是要求在WePOS操作系统上访问Access数据库的详细信息?

我使用Crystal Reports XI编写了一个报告,链接到Access数据库C:\ MyData.mdb。 该报告有一个字段(本例简化),没有子报告。 我使用C#.NET 4使用Forms和WPF Cyrtsal Report Viewer。 该报告在运行Windows XP的开发PC以及运行Windows XP的其他“tills”上成功查看。 但是,在运行WePOS(一种削减Windows XP)的情况下,报告“始终”显示一个对话框,询问登录详细信息,即用户名和密码。 此对话框还显示C:\ MyData.mdb的正确路径。 我花了很多天在这上面,尽可能地测试各种方式(我相信每个人都会记得这些时候!)。 我使用此代码来确保数据库正确链接到: TableLogOnInfo logonInfo; foreach (CrystalDecisions.CrystalReports.Engine.Table table in report.Database.Tables) { logonInfo = table.LogOnInfo; logonInfo.ConnectionInfo.ServerName = string.Empty; logonInfo.ConnectionInfo.DatabaseName = “C:\MyData.mdb”; logonInfo.ConnectionInfo.UserID = string.Empty; logonInfo.ConnectionInfo.Password = string.Empty; table.ApplyLogOnInfo(logonInfo); } …它适用于使用Windows XP的每台PC,除了使用WePOS的PC。 我也玩过: report.SetDatabaseLogon(string.Empty, string.Empty, “C:\MyData.mdb”, string.Empty); ……但没有区别。 Access数据库上没有用户名或密码 所有使用的PC都安装了相关的软件(运行时等) 所有的PC都使用Adminstrator帐户进行了测试(文件权限被双重检查) […]

从c#.net添加记录到访问数据库时出错

码: int MaxRows = 0; int inc = 0; private void Form2_Load(object sender, EventArgs e) { con = new System.Data.OleDb.OleDbConnection(); ds1 = new DataSet(); con.ConnectionString = ” Provider=Microsoft.ACE.OLEDB.12.0;Data Source=D:/Documents and Settings/user/My Documents/anchu.accdb”; string sql = “SELECT * From Table1”; da = new System.Data.OleDb.OleDbDataAdapter(sql, con); con.Open(); da.Fill(ds1, “Table1”); //NavigateRecords(); con.Close(); //con.Dispose(); } /*private void NavigateRecords() { […]

使用c#更新ms访问

有人可以请帮助我的代码有什么问题吗? 它是一个更新function,在我的调试过程中它正确执行但它没有更新我的数据库。 我已经找到了解决这个问题的答案,但它仍然没有用。 我也尝试创建一个新的数据库,希望它是问题但仍然无效。 private void update_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); OleDbConnection con = new OleDbConnection(); con.ConnectionString = @”Provider = Microsoft.ACE.OLEDB.12.0; Data Source = C:\Users\sherilyn & justine\Documents\Visual Studio 2015\Projects\jollibee4\jollibee4\jollibee.accdb”; con.Open(); OleDbCommand cmd = new OleDbCommand(); cmd.Connection = con; String id = dataGridView1.SelectedRows[0].Cells[0].Value + String.Empty; int id1 = Int32.Parse(id); try { […]

如何从Access数据库中读取是/否值作为布尔值?

帮助我以布尔格式从MS访问中检索YES/NO数据类型。 我尝试解析它,但它总是返回false。 更新:实际上不是问题 对不起,它确实接受YES / NO作为布尔值。 OleDbconnection dbConnect = new OleDbConnection(“…..*.MDB”); dbConnect.Open(); ….. … //xyz = dbCommand.ExecuteReader() bool value = (bool)xyz[1]; 下次我会研究更多,并在询问之前发现小错误..对不起的人

通过单击按钮将数据从Access获取到C#中的文本框

我在MS Access中有一个表包含:(FoodID,FoodName,Price)。 在C#中,我有三个文本框(txtId,txtName,txtPrice)和一个按钮(btnSearch)。 我的问题是,在C#中我只需输入(txtId)中的FoodID然后点击按钮搜索它将自动显示txtName和txtPrice中的FoodName和Price(来自表访问)。 我从你那里得到了源代码,但是它的错误(OleDbDataReader dr = cmd.ExecuteReader();)它的消息是“条件表达式中的数据类型不匹配”。 请帮我解决这个问题。 这是我为您提供的完整源代码。 System.Data.OleDb.OleDbConnection conn = new OleDbConnection(); conn.ConnectionString = “your connection string”; OleDbCommand cmd = new OleDbCommand(); cmd.Connection = conn; cmd.CommandText = “select FoodName, Price from tablename where FoodID = ‘” + txtId + “‘ “; conn.Open(); OleDbDataReader dr = cmd.ExecuteReader();//error this line! while(dr.Read()) { txtName.Text = […]

如何检查记录是否存在,并在c#中的ms访问数据库中插入

我想检查记录是否存在,如果它存在我不想插入,如果它我想在c#中的ms访问数据库中插入数据。 OleDbCommand cmd = new OleDbCommand(“insert into MyTable values(‘” + test + “‘,'” + test + “‘,'” + “123” + “‘);”, con); OleDbCommand cmd1 = new OleDbCommand(“select * from MyTable”, con); temp = 0; try { con.Open(); string count = (string)cmd1.ExecuteScalar(); temp = cmd.ExecuteNonQuery(); if (temp > 0) { MessageBox.Show(“One Record Added”); } else { […]

将Mdb转换为Sql Server

如何使用c#或其他语言将mdb访问文件转换为sql server? 我在msdn找到了一篇文章 。 但是,我无法理解。 谢谢。

传递参数以从c#访问查询

我设计了一个访问查询,如下所示: SELECT Replace(names,’lion’,’kiss’) AS Expr1 FROM table1; 狮子和吻这两个值是暂时的,现在我希望这些是两个变量,这样我就可以从c#中传递值。 如何从c#调用此查询,并将其传递给两个值。 我正在使用Access 2007。 谢谢你的帮助 :)