“将截断字符串或二进制数据”解决与数据库image类型理解

本文介绍了在使用SQL Server进行数据提交时遇到的截断问题及其解决方法,包括调整数据库字段大小和加强数据验证,并探讨了image类型用于图片存储的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前几天做订餐,解决一堆bug之后提交数据怎么怎么都提交不上,提示截断字符串或二进制数据。那么到底怎么回事呢?
这里写图片描述

搜索一把终于明白!原因在于数据的长度不符合才造成的。

解决办法
解决办法当然有多种,一是修改数据库字段大小; 二是加强数据强壮性,严格的输入判断。
目前我的办法就是将数据库被截断字段增大至200,重新生成一波后问题解决。

image类型
这个我们平时很少用到,因为一般情况下也不会做什么存取图片的事务,那么这次用到了,就要来讲讲SQL server中image类型的图片存储。

百度百科解释:在 Image 数据类型中存储的数据是以位字符串存储的,不是由 SQL Server 解释的,必须由应用程序来解释。例如,应用程序可以使用BMP、TIEF、GIF 和 JPEG 格式把数据存储在 Image 数据类型中。
所以我们理解,image类型不是把图片直接放到数据库,而是经过程序转化成二进制字符,转而存储到数据库中

那么,程序中是如何转化的呢?
答案是blob

详细如何大家可以直接点击blob,查看它的介绍。在这里博主只是将图片路径存放入数据库,漏洞还有很多,还需要大家共同努力!

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值