查询db40中的数据库连通性



我正在创建一个db40对象(即Customer.yap),如果它已经创建,我只需将新对象插入到现有对象(即Customer.yap)中。

对于这两个操作,我只是使用:

IObjectContainer db1 = Db4oEmbedded.OpenFile(Db4oEmbedded.NewConfiguration(),@"C:UsersadminDesktopDb4oObjectFilesComponents.yap");
        try
        {
            db1.Store(comp1);
        }

        finally
        {
            db1.Close();
        }

我做得对吗,或者有一个单独的命令来检查对象是否存在,然后插入值,或者我可以为这两个操作使用相同的代码,这意味着db40会自动检查对象是否存在于指定位置,如果存在则插入对象,否则它会在指定位置创建对象,然后插入对象。

请帮帮我

谢谢你的期待

PS:我在asp.net的web应用程序上下文中这样做,然后有这个想法总是潜伏在我的脑海中。我不应该使用远程连接而不是将其存储在实际的物理位置,但是我不能仅仅弄清楚有人是如何在远程连接上下文中创建和存储对象的。我不知道该指定哪些参数,即主机,端口,用户名和密码,我甚至不知道如何创建数据库连接,应该在程序中写什么语句来连接到这个远程目标文件。

请帮助我,引导我。

非常感谢所有期待的人

db40自动更新对象而不是插入对象,但有一个问题:您必须保持对象容器打开。db40使用跟踪存储对象的本地缓存,但是一旦在对象容器上调用close(),本地现金就消失了。如果在对象容器的close()之后存储先前持久化的对象,则会得到一个重复对象(db40认为它是一个新对象)。如果您真的必须关闭对象容器并希望更新对象,则必须在db40上查询它,然后更新,然后调用store(然后可以close())。

关于如何连接远程db40服务器,请参见:http://developer.db4o.com/documentation/reference/db4o - 7.12/- java/reference/content/client server/networked.htm

最好!(祝你好运!)

最新更新