如何使用c#在SQL Server 2000中添加2D数组

时间:2009-02-18 14:00:49

标签: c# sql-server

我想使用c#在sql server 2000中添加2维数组。但问题是sql中没有数组数据类型。请帮助我如何在sql server中添加2维数组。 Thanx用于查看我的问题...

4 个答案:

答案 0 :(得分:2)

二维数组基本上是table。因此,您需要在数据库中添加一个表来保存此数组。如果需要保存多个数组实例,则需要添加一个额外的列来存储单个数组通用的键。

答案 1 :(得分:1)

您无需为每个维度创建额外的列 ,因为当前接受的答案显示。这完全是关于序列化

  1. 在SQL Server中,创建一个Image类型的列来存储n维数组。如果您使用的是SQL Server 2005或更高版本,请使用VARBINARY(MAX)而不是Image。
  2. 在C#中,序列化您的n维数组,以便将其作为一维数组(byte [])处理
  3. 将序列化数据保存到图像字段中。
  4. 当然,当您需要从数据库中获取信息时,您将获得一个字节数组。然后,您需要将其反序列化为您的原始类型(n维数组)。

    需要一个例子吗?

    看看这个类似的问题,我发布了一个用varbinary字段做的例子。它在SQL 2000中应该非常相似。

    https://stackoverflow.com/a/11334237/354756

答案 2 :(得分:0)

数据库字段用于存储单个数据项。任何数据结构都必须映射到数据库中的列和表 - 而不是添加到单个数据库字段中。

您存储的是哪种数据?如果你想对数组中的各个项进行任何索引或搜索,那么你最好想出一个数据库设计来反映你正在建模的数据(所以一组笛卡尔坐标mgiht映射到a包含x,y和z列的表。)

如果这只是存储一些数据以供以后检索,那么你可以将它添加为BLOB字段,只是序列化和反序列化它。

答案 3 :(得分:0)

由于您没有提供任何详细信息,但请查看Arrays and Lists in SQL Server 2005Arrays and Lists in SQL Server (SQL 2000 and Earlier)

,因此不知道您要完成的工作