我需要保存数据集,报告程序的结果,在SQL Server 2000中执行表我保存的数据集以同样的方式我会存储在数据库中的文件,通过字节数组()?存储XML数据集2000
2
A
回答
3
SQL Server 2000是真的不装备精良,以处理XML的斑点。它既没有专用的XML类型,也不容易以VARCHAR(MAX)数据类型的形式支持大型文本。两者都可以在SQL Server 2005及更高版本中使用。
如果你完全肯定是在2000年,最好的选择是将你的XML存储到TEXT
列(或NTEXT
- 每个字符2个字节) - 如果你需要支持非ASCII类型的字符集,如亚洲语言,希伯来语,阿拉伯语等)。
提醒你,虽然:文本列的数据类型是不是非常有用的,你真的不能做太多它没有很多的麻烦 - 你甚至不能真正的搜索或更换了东西。一团糟。它通常的字符串的方法工作的无 - 这是一个真正的“存储和忘记”之类的斑点.....
UPDATE:如果你将永远需要检查该文件的内容,但它的存储在数据库中(真的?),您还可以使用IMAGE
数据类型。
要存储在SQL Server中的文件,做这样的事情:
private void AddFileToDatabase(string filename)
{
using(SqlConnection con = new SqlConnection("server=***;database=***;integrated security=SSPI;"))
{
string insertStmt = "INSERT INTO dbo.YourTableName(DocFilename, DocContent) VALUES(@FileName, @Content)";
using(SqlCommand cmd = new SqlCommand(insertStmt, con))
{
cmd.Parameters.AddWithValue("@FileName", filename);
cmd.Parameters.Add("@Content", SqlDbType.Image);
cmd.Parameters["@Content"].Value = File.ReadAllBytes(filename);
con.Open();
int result = cmd.ExecuteNonQuery();
con.Close();
}
}
}
而且基本上是同样的事情读出从数据库的字节团块。或者你可以把它包装在一个很好的存储过程中 - 完全取决于你。
如果使用TEXT/NTEXT
,你需要存储的实际字符串,例如你不能真正使用的二进制文件(如Word) - 但如果你有从报告XML或HTML或输出的东西,然后TEXT/NTEXT会工作,太(只使用cmd.Parameters.Add("@Content", SqlDbType.Text);
在这种情况下)。
0
也serialize
(二进制不是XML)的数据集,并可以保存在数据库中。
相关问题
- 1. SQL Server 2000 - 从存储在VARCHAR中的XML中提取数据
- 2. 存储XML数据
- 3. Android数据存储在xml
- 4. 存储数据到JavaScript数据集
- 5. sql server 2000存储过程
- 6. 将关系数据库存储为XML
- 7. 在数据库中存储XML文件
- 8. 如何将数据存储在xml中?
- 9. 从XML获取和存储数据
- 10. XML解析和存储数据
- 11. xml数据存储的最佳方法
- 12. 将数据存储在XML或MongoDB中
- 13. 以XML或SQL存储数据?
- 14. Web场+ XML文件的数据存储
- 15. opencv数据通过xml存储优秀?
- 16. 在SQL数据库中存储xml
- 17. 全局存储静态xml数据
- 18. xml如何存储在数据库
- 19. Android数据存储在XML文件
- 20. 将XML存储到Oracle数据库中
- 21. 将XML用于数据存储
- 22. 元数据存储在XML Schema中
- 23. 将base64数据存储在XML中?
- 24. 解析xml在mysql中存储数据
- 25. 使用XML文件存储数据
- 26. 存储XML数据以用于插件
- 27. 解析XML(仅存储选择数据)
- 28. 将数据集对象保存为XML
- 29. C# - 将数据集保存为XML
- 30. WPF将数据集保存到xml
这是一个SQL Server 2000数据库。我只需要存储文件并根据需要加载它们。我不会在文档内搜索等。 – 2010-02-23 17:13:47
我注意到有一个dataset.GetXML()它返回DataSet的字符串表示形式。如果文本数据类型不能用于保存字段? – 2010-02-24 01:46:35
@Saif:是的,当然 - 你可以得到一个表示数据集的XML字符串,并将该字符串存储到SQL Server 2000中的TEXT/NTEXT字段中 – 2010-02-24 05:54:56