当前位置: 代码迷 >> C# >> 这个数据对象怎么存入sql数据库
  详细解决方案

这个数据对象怎么存入sql数据库

热度:40   发布时间:2016-05-05 04:29:57.0
这个数据对象如何存入sql数据库?
有一个Person类:

class Person
{
    public string Name;
    public int Age;
    public List<string> list;
}

一个People类:

class People
{
    public People()
    {
        ListPerson = new List<Person>();
    }
    public Person person;  //自定义数据
    public List<Person> ListPerson;
    List<string> List;
    List<List<string>> LisList;  //此集合,元素会上十万个,不过,List<string>里面的string数量不多
    ....
    .... //还有很多属性
}



如上面的代码,数据比较复杂,如果现在有一个People对象,需要把此People对象存入sql数据库,请问,该怎么储存更好呢?
试了一下JSON,不太理想,上十万个元素的集合不好处理。有人说采取属性对应列的方式创建表,但是属性太多。在程序中,会执行很少属性关联的查询。不知序列化二进制效率怎么样
请问大师,该怎么储存这个对象...........
------解决思路----------------------
你这种不规则对象,没法建表存储的吧,虽然直接序列化是一种方法,但是不能用SQL检索集合内部元素可是个麻烦事,你自己权衡吧。
------解决思路----------------------
表1 :Person, 字段为Person类中属性
表2:存储所有单列ID,string值
表3:Person和string的对应关系。列看你Person和sting的对应关系


------解决思路----------------------
……还是建表吧,按字段,子表
------解决思路----------------------
序列化二进制的话,存入到数据库之后,很难再查询了啊。 SQL语句也没办法查出你想找的对象。

所以建议是拆分成多个表,然后关联起来。楼上说的很好了。
------解决思路----------------------
怎么感觉在说,你把这个人存进硬盘里
  相关解决方案