这个数据对象如何存入sql数据库?

fer34r 2015-03-19 09:16:27
有一个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,不太理想,上十万个元素的集合不好处理。有人说采取属性对应列的方式创建表,但是属性太多。在程序中,会执行很少属性关联的查询。不知序列化二进制效率怎么样
请问大师,该怎么储存这个对象...........
...全文
825 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
AirZilong 2016-03-04
  • 打赏
  • 举报
回复
存入对象还是不行的,把对象放在数组,然后进行序列化,就可以存到sqlite里面了
正宗熊猫哥 2015-03-20
  • 打赏
  • 举报
回复
怎么感觉在说,你把这个人存进硬盘里
fer34r 2015-03-20
  • 打赏
  • 举报
回复
引用 5 楼 fer34r 的回复:
我的想法,还是将整个People对象序列化成二进制储存,同时,筛选一些属性创建列(这些列是程序中进行sql查询需要的属性)。这样可否呢?
可否?
fer34r 2015-03-20
  • 打赏
  • 举报
回复
我的想法,还是将整个People对象序列化成二进制储存,同时,筛选一些属性创建列(这些列是程序中进行sql查询需要的属性)。这样可否呢?
fer34r 2015-03-20
  • 打赏
  • 举报
回复
各位没有遇到这种?
fer34r 2015-03-20
  • 打赏
  • 举报
回复
各位没有遇到这种?
SPFarmer 2015-03-19
  • 打赏
  • 举报
回复
序列化二进制的话,存入到数据库之后,很难再查询了啊。 SQL语句也没办法查出你想找的对象。 所以建议是拆分成多个表,然后关联起来。楼上说的很好了。
  • 打赏
  • 举报
回复
……还是建表吧,按字段,子表
shoppo0505 2015-03-19
  • 打赏
  • 举报
回复
表1 :Person, 字段为Person类中属性 表2:存储所有单列ID,string值 表3:Person和string的对应关系。列看你Person和sting的对应关系
qldsrx 2015-03-19
  • 打赏
  • 举报
回复
你这种不规则对象,没法建表存储的吧,虽然直接序列化是一种方法,但是不能用SQL检索集合内部元素可是个麻烦事,你自己权衡吧。

111,089

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧