怎么在SQL中保存图片
我心寂寞 2019-06-03 13:15:35
好评回答
/*--bcp实现二进制文件的导入导出支持image,text,ntext字段的导入/导出image适合于二进制文件,包括:Word文档,Excel文档,图片,音乐等text,ntext适合于文本数据文件注意:导入时,将覆盖满足条件的所有行导出时,将把所有满足条件的行导出到指定文件中此存储过程仅用bcp实现邹建2003.08-----------------*//*--调用示例--数据导出execp_binaryIO'zj','','','acc_演示数据..tb','img','c:zj1.dat'--数据导入execp_binaryIO'zj','','','acc_演示数据..tb','img','c:zj1.dat','',0--*/ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[p_binaryIO]')andOBJECTPROPERTY(id,N'IsProcedure')=1)dropprocedure[dbo].[p_binaryIO]GOCreateprocp_binaryIO@servenamevarchar(30),--服务器名称@usernamevarchar(30),--用户名@passwordvarchar(30),--密码@tbnamevarchar(500),--数据库..表名@fdnamevarchar(30),--字段名@fnamevarchar(1000),--目录文件名,处理过程中要使用/覆盖:@filename_temp@tjvarchar(1000)='',--处理条件.对于数据导入,如果条件中包含@fdname,请指定表名前缀@isoutbit=1--1导出((默认),0导入ASdeclare@fname_invarchar(1000)--bcp处理应答文件名,@fsizevarchar(20)--要处理的文件的大小,@m_tbnamevarchar(50)--临时表名,@sqlvarchar(8000)--则取得导入文件的大小if@isout=1set@fsize='0'elsebegincreatetable#tb(可选名varchar(20),大小int,创建日期varchar(10),创建时间varchar(20),上次写操作日期varchar(10),上次写操作时间varchar(20),上次访问日期varchar(10),上次访问时间varchar(20),特性int)insertinto#tbexecmaster..xp_getfiledetails@fnameselect@fsize=大小from#tbdroptable#tbif@fsizeisnullbeginprint'文件未找到'returnendend--生成数据处理应答文件set@m_tbname='[##temp'cast(newid()asvarchar(40))']'set@sql='select*into'@m_tbname'from(selectnullas类型unionallselect0as前缀unionallselect'@fsize'as长度unionallselectnullas结束unionallselectnullas格式)a'exec(@sql)select@fname_in=@fname'_temp',@sql='bcp"'@m_tbname'"out"'@fname_in'"/S"'@servenamecasewhenisnull(@username,'')=''then''else'"/U"'@usernameend'"/P"'isnull(@password,'')'"/c'execmaster..xp_cmdshell@sql--删除临时表set@sql='droptable'@m_tbnameexec(@sql)if@isout=1beginset@sql='bcp"selecttop1'@fdname'from'@tbnamecaseisnull(@tj,'')when''then''else'where'@tjend'"queryout"'@fname'"/S"'@servenamecasewhenisnull(@username,'')=''then''else'"/U"'@usernameend'"/P"'isnull(@password,'')'"/i"'@fname_in'"'execmaster..xp_cmdshell@sqlendelsebegin--为数据导入准备临时表set@sql='selecttop0'@fdname'into'@m_tbname'from'@tbnameexec(@sql)--将数据导入到临时表set@sql='bcp"'@m_tbname'"in"'@fname'"/S"'@servenamecasewhenisnull(@username,'')=''then''else'"/U"'@usernameend'"/P"'isnull(@password,'')'"/i"'@fname_in'"'execmaster..xp_cmdshell@sql--将数据导入到正式表中set@sql='update'@tbname'set'@fdname'=b.'@fdname'from'@tbname'a,'@m_tbname'b'caseisnull(@tj,'')when''then''else'where'@tjendexec(@sql)--删除数据处理临时表set@sql='droptable'@m_tbnameend--删除数据处理应答文件set@sql='del'@fname_inexecmaster..xp_cmdshell@sqlgo
我心寂寞 2022-01-19 17:30:00
相关推荐
ipad可以接听电话吗
ipad不可以接听电话,ipad只能支持WIFE或者3G上网功能。iPad是由苹果公司于2010年开始发布的平板电脑系列,定位介于苹果的智能手机iPhone和笔记本电脑产品之...
详情>
提问时间:2020-02-13
为什么网上没有电子烟
国家市场监管总局和国家烟草专卖局联合发布《关于进一步保护未成年人免收电子烟侵害的通告》,督促电子烟厂商、电商平台关闭电子烟店铺以及网络广告。所以网上没有电子烟了。电子烟是一种...
详情>
提问时间:2020-02-13
subjrct是什么意思
subjrct的意思有话题、学科、科目、主题、题材、主观等。学科该词有以下两种含义:①相对独立的知识体系。人类所有的知识划分为五大门类:自然科学,农业科学,医药科学,工程与技...
详情>
提问时间:2020-02-13
长时间泡在水里会怎样
长时间泡在水里,人体为了避免散热过多,皮肤血管会出现保护性反射,使皮肤血管收缩。所以初下水时皮肤发白,等在水中游了一段时间,肌肉活动使皮肤血管扩张,血液循环加快,热量增加,皮...
详情>
提问时间:2020-02-13
quebec是哪个国家的
quebec中文是魁北克,是加拿大的一个城市。魁北克市位于圣劳伦斯河与圣查尔斯河交汇处,它是加拿大魁北克省省会。加拿大(Canada),为北美洲最北的国家,西抵太平洋,东迄大...
详情>
提问时间:2020-02-13
什么不收葱什么必定空
秋分不收葱,霜降必定空。意思是在秋分的时候就要收葱,最晚不能等到霜降时节,不然大葱被冻死了。1、大葱品种不同,采收时间也不同,如果是生长速度快的品种,过晚采收会出现老化或冻害...
详情>
提问时间:2020-02-13
解放军棕色迷彩服是什么兵
解放军棕色迷彩服是陆军冬作训服,荒漠迷彩与丛林迷彩一样,没有固定模式。主色调以黄、棕、淡绿为主,有时会加入少量黑、红色、绿色。20世纪,特别是60~70年代以来,由于军事武器...
详情>
提问时间:2020-02-13
红花藏红花过期了能食用吗
红花藏红花过期了不能食用。藏红花,又名西红花、番红花。在中国藏红花是极为珍贵的药材。藏红花的功效主要在于血,具有养血、活血、补血、行血、理血等功能。此外,藏红花还具有活血化瘀...
详情>
提问时间:2020-02-13
吃了龙虾可以吃芒果吗
平时在吃芒果的时候,最好不要和一些海鲜一起吃,主要还是因为芒果里面富含维生素c,海鲜里面的蛋白质含量比较丰富,如果在一起吃的话,容易导致蛋白质沉淀,形成不容易消化的物质,这容...
详情>
提问时间:2020-02-13