[SQL SERVER] - 数据表 保存 / 查看 海量文本的方法
背景
WCF + EF + Sql Server 提供服务,包含一个数据上传功能,该方法接收客户端上传的对象列表(多张表单,每个表单包含千余条相关记录)。
瓶颈
WCF 默认有文件大小(4M)和超时限制(1分钟),直接保存对象列表会遇到超时问题,保存失败。
上传效率:大概 3分钟 / 千条记录,客户端调用会经常超时。
解决
1. 新建临时表,保存序列化后的对象列表,保存成功即返回上传成功响应给客户端。
2. 启动新线程,反序列化数据对象,执行正常数据分表插入逻辑。
临时表
如何查看字段中的海量数据?
varchar(MAC) 类型,最大可存储2^31-1字节。
如果在SSMS中以网络显示结果,最多可以显示43679 字节,其余部分会被截取省略。
可将结果列导出到文本文件进行查看。
微软建议
在 Microsoft SQL Server 的未来版本中,将删除 text、 ntext 和 image 数据类型。(避免在新的开发工作中使用这些数据类型,并计划修改当前使用它们的应用程序)
请使用 varchar (max)、nvarchar (max) 和 varbinary (max) 来代替。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库