Beispiel #1
0
        /// <summary>
        /// 删除数据
        /// </summary>
        /// <param name="obj"></param>
        /// <returns>返回受影响的行数</returns>
        public static int delete(Object obj)
        {
            if (obj == null)
            {
                throw new ArgumentNullException();
            }

            int num = ObjectDB.Delete((IEntity)obj);

            ObjectPool.Delete((IEntity)obj);
            return(num);
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            Guid guid;

            // create a database
            var pathToDataDir     = "db-data";
            var fileStorageEngine = FileStorageEngineFactory.Create(pathToDataDir, SIZE_1G, MAX_ENTRIES);

            using (var db = new ObjectDB <object>(fileStorageEngine, new BinaryFormatterSerializer()))
            {
                // create
                var data = new MyData(1, "hello world");
                Console.WriteLine("inserting object: " + data);
                guid = db.Insert(data);
                Console.WriteLine("GUID of inserted object={0}", guid);

                // read
                data = db.Read <MyData>(guid);
                Console.WriteLine("read object: {0}", data);

                // update
                data.Text = "very interesting text";
                Console.WriteLine("updating object: {0}", data);
                db.Update(guid, data);
            }

            // re-open existing databse
            using (var db = new ObjectDB <object>(FileStorageEngineFactory.Open(pathToDataDir), new BinaryFormatterSerializer()))
            {
                // read after re-opening the db
                var data = db.Read <MyData>(guid);
                Console.WriteLine("object after re-opening the DB: {0}", data);

                // delete
                Console.WriteLine("deleting object");
                db.Delete(guid);

                // RecordNotFoundException after deletion
                try
                {
                    db.Read <MyData>(guid);
                }
                catch (RecordNotFoundException)
                {
                    Console.WriteLine("object was deleted");
                }
            }
        }
Beispiel #3
0
        private void Delete(BenchmarkIteration iter, ObjectDB <IFlatbufferObject> db, IFlatbufferObject data)
        {
            List <Guid> ids = new List <Guid>();

            for (var i = 0; i < Benchmark.InnerIterationCount; i++)
            {
                ids.Add(db.Insert(data));
            }

            using (iter.StartMeasurement())
            {
                foreach (var id in ids)
                {
                    db.Delete(id);
                }
            }
        }