我试图提取.mdb数据库的模式,以便我可以在其他地方重新创建数据库.
我该如何解决这样的问题?
Microsoft Jet中LIKE运算符中的正确多字符通配符是什么,以及哪些设置会影响它(如果有的话)?我支持在Microsoft Jet(在Access数据库上)上运行的旧ASP应用程序,它在LIKE运算符中使用%符号,但我有一个客户,他的环境显然有问题,因为%字符被理解为常规我认为他的多字符通配符是*.此外,我几乎可以肯定,在过去,我使用*代替%编写了查询应用程序.最后,Microsoft Access(作为应用程序)也只适用于*而不是%(但我不确定它是多么相关).
我只花了大约20分钟在互联网上搜索没有任何有用的结果,所以我认为在stackoverflow上问一下会有用.有人可能已经知道了,最好将堆栈溢出的潜在答案保留在任何其他随机讨论论坛上.
如何在Java中读取(和写入)MS Access文件(.mdb)?是否有任何用于MS Access的开源jdbc驱动程序?
我明天正在升级客户端Access应用程序的后端,需要准备好针对此客户端的特定问题的计划.老板需要能够定期(通常是每月)将数据文件从SQL Server的办公室带走,并对数据进行统计分析.
我已经研究了将整个SQL Server数据库从服务器复制到本地SQL Express的最简单方法,并且这种解决方案在这种情况下不起作用,因为:
不能使用一次性解决方案(数据库发布向导),因为这需要是可编写脚本的.
不能使用依赖于联网的两台计算机的任何方法,因为这不是一个选项 - 数据必须通过USB拇指驱动器传输(因此,没有复制).
不能使用任何依赖于从服务器控制台或工作站运行SQL Server管理工具进行备份的方法.
无法直接连接到SQL Server数据库进行分析,因为数据必须可移植到其他位置.
我认为我需要的是调用创建备份文件的脚本,然后将结果复制到USB驱动器的某种方法.然后我需要第二个脚本从USB驱动器复制备份文件并将其还原到另一个SQL Server.
传输的数据是只读的(或者,所做的任何更改都不需要返回主服务器),并且不会在第二个位置更新数据.它目前使用普通的旧批处理文件编写脚本来复制后端MDB文件,我需要一些对用户来说简单的东西.
它不能依赖于Powershell(SQL Server Management Studio),因为我不希望它必须安装在用户运行脚本的计算机上(有六个工作站,脚本需要可以运行,我不想在所有这些上安装一些东西).
我将设置备份代理以每晚创建备份,因此我可以复制该文件,而无需在复制之前启动备份.因此,我可能只需要在目标计算机上编写恢复脚本.
思想,建议,指针?
我正在将Jet数据库升级到SQL Server Express 2008 R2,在此之前,我正在重新评估架构(它是在1997-98设计的,设计它的人(即我)是一个白痴!).
我的问题是关于N:N连接表与两列复合键.在Jet中,两列复合键的第一列上的连接将使用复合索引,但第二列上的连接不会,因此通常在具有大N:N连接表的Jet数据库中具有相当大的记录数,除了复合索引,我在第二列上添加了第二个非唯一索引.
这在SQL Server中是个好主意吗?
(也许这在Jet中不是一个好主意?)
我正在为网站实现RSS提要,但我不了解有关提要的XML文件的格式/大小/内容的某些信息.
我正在使用过去的数据初始化网站,这些数据可以追溯到1999年(之前没有任何订阅源),每年只会添加几百个项目.
是否有一些归档协议,或者我可以保留一个文件并继续追加它?我认为那将是低效的,因为聚合器必须下载整个事物(我假设).
那么,通常的习惯是什么?限制在上个月?目前900多个项目的文件是1.5MB,我希望1年的价值大约是或者更小的1/10.
有关使用什么原则以及如何实现它的任何指示?我正在使用PHP,但我的数据很复杂,我编写了自己的脚本来编写文件(并且验证得很好),所以我不能使用固定解决方案 - 我需要了解自己要实现什么脚本.
我正在做的项目差不多完成了.我正在加载.MDB文件,在DataGrid上显示内容并尝试在DataGrid上获取这些更改并将它们保存回.MDB文件.我还将创建一个函数,允许我从一个.MDB文件中获取表并将其保存到另一个.MDB文件中.当然,如果我无法弄清楚如何将更改保存回.MDB文件,我就无法做到这一点.
我对Google进行了广泛的研究,但我的问题没有答案.我认为自己是这个特定主题的初学者所以请不要让答案太复杂 - 我需要最简单的方法来编辑.MDB文件!请提供编程示例.
提前感谢您,如果您需要更多信息,请与我们联系.这是我可能不得不问这个话题的最后一件事......感谢上帝.
编辑:
我正在使用的.mdb是一个Microsoft Access数据库.(我甚至不知道有多个.mdb文件)
我知道我不能通过编写器或任何东西直接写入.MDB文件,但有没有办法可以生成一个带有DataSet信息的.MDB文件?或者只是一种方法,我可以将表添加到我已经加载到DataGrid的.MDB文件中.有办法!
同样,我需要一种在C#中以编程方式执行此操作的方法.
编辑:
好的,我的项目相当大,但我使用一个单独的类文件来处理所有数据库连接.我知道我的设计和来源非常邋,,但它完成了工作.我和互联网上的例子一样好.
请记住,我只是以另一种形式连接到DataGrid.如果你想要我的代码来自Datagrid表单,请告诉我(我不知道为什么你会需要它).DatabaseHandling.cs处理2个.MDB文件.所以你会看到两个数据集.我最终将使用它来从一个数据集中获取表并将它们放入另一个数据集中.我只需要弄清楚如何将这些值保存到.MDB文件中.
反正有没有这样做?必须有办法...
编辑:
从我研究和阅读的内容......我认为答案就在我的鼻子底下.使用"Update()"命令.现在虽然这是重新确保实际上有一个简单的方法,我仍然留下问题,我没有friggin线索如何使用此更新命令.
也许我可以像这样设置它:
Oledb.OledbConnection cn = new Oledb.OledbConnection();
cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Staff.mdb";
Oledb.OledbCommand cmd = new Oledb.OledbCommand(cn);
cmd.CommandText = "INSERT INTO Customers (FirstName, LastName) VALUES (@FirstName, @LastName)";
Run Code Online (Sandbox Code Playgroud)
我认为可能会这样做,但我不想手动插入任何东西.我想要做这两件事:
我希望有人能为此提出答案......我的项目已经完成所有等待的答案就是一个简单的答案.
提前再次感谢您.
编辑:
好的...好消息 我已经想出如何查询.mdb文件本身(我认为).这是代码,它不起作用,因为我试图使用的sql命令导致运行时错误.这将带我到我的下一个问题.
添加到DatabaseHandling.cs的新功能代码:
static public void performSynchronization(string table, string tableTwoLocation)
{
OleDbCommand cmdCopyTables = new OleDbCommand("INSERT INTO" + table + "SELECT * FROM [MS Access;" + tableTwoLocation …Run Code Online (Sandbox Code Playgroud) 我是否可以使用访问2007 VBA引用而不受惩罚(具体而言,就基本语言和旧的com接口而言)为Access 2003开发基于VBA的解决方案?
或者是否有一些新的/修改过的语法添加到我需要注意的语言中?
2007年办公室的对象模型是否得到了大幅提升?
还有其他警告吗?
谢谢.
我偶尔会遇到一个问题,我的一个同事已经开发了一个旧系统.他们倾向于拥有数千行代码来执行简单的操作,例如导入csv文件.
目前vba流程是:
我想用它做的是:
我有一个快速搜索,看不到任何简单的方法只是将文件吸入表中.
任何帮助,将不胜感激.
谢谢
保罗
如何创建空的.mdb文件?我正在使用ADO.NET和C#.谢谢!
我没有微软访问但想打开一个mdb文件,有什么办法可以做到这一点?
mdb文件包含我需要的SQL代码.它只是一个连接到远程数据库的文件.我需要查看sql代码
我确实尝试过openoffice base,但它只向我展示了一些表格.我没看到sql代码在哪里?
我正在Access 2007中建立数据库,而目前我正在努力查询。在仅一栏中,可以提出多个答案。因此,当我打开查询时,当给出3个答案时,我得到3行。我想将行连接成一列。有时没有答案,有时1或2或最多3。
目前,我的查询如下所示:
列名:B-Latijnse命名(空格)B-Nederlandse命名(空格)Bloemen.B-4月2日值(空格)B-克拉斯(空格)-B-Leerkracht(空格)B-洛卡蒂
第1行 Abelmochus(空间)(空间)Zaaien(空间)1ATA(空间)Depuydt(空间)Serre 1
第2行 Abelmochus(空间)(空间)Oogsten(空间)1ATA(空间)Depuydt(空间)Serre 1
第3行 Abelmochus(空间)(空间)Bemesten(空间)1ATA(空间)Depuydt(空间)Serre 1
我希望它看起来像这样:
第1行 Abelmochus(空间)(空间)Zaaien,Oogsten,Bemesten(空间)1ATA(空间)Depuydt(空间)Serre 1
tbl称为Bloemen,这是当前查询的SQl:
SELECT Bloemen.[B - Latijnse benaming], Bloemen.[B - Nederlandse benaming], Bloemen.[B - April 2].Value, Bloemen.[B - Klas], Bloemen.[B - Leerkracht], Bloemen.[B - Locatie]
FROM Bloemen
WHERE (((Bloemen.[B - April 2].Value) Is Not Null));
Run Code Online (Sandbox Code Playgroud)
谁能帮我将行连接成一排。我不知道如何编写SQL ...我必须对48个查询执行此操作,因此当它是一种标准时,将对您有所帮助。
非常感谢!!!!!!!
乔纳斯·罗伦斯(Jonas Roelens)