更新 SQL-Table 中的数据类型图像
UPDATE datatype image in SQL-Table
我有一个 table cSc_Role
列 RoleSettings
。
RoleSettings
是数据类型图像。
内容是这样的:0x504B030414000000080000000000E637CA2A4
现在我需要为一行更新此列。
像这样:
UPDATE cSc_Role
SET RoleSettings = '0x343240000000000E637CA2A430500'
WHERE Naming = 'User X'
但是对于二进制数据,这似乎不可能用字符串来完成。
另一种选择是,我可以在临时 .bak 文件中提供图像。
然后做一个INSERT INTO
。
但是我读过这个解决方案只能插入一个完整的行而不仅仅是一列。或者我可以使用 insert 只插入一列吗?
如何在 table 中更新或插入一个图像列?
提前致谢。
使用十六进制文字,x'34....'
UPDATE cSc_Role
SET RoleSettings = x'343240000000000E637CA2A430500'
WHERE Naming = 'User X'
尝试使用转换为 varbinary:
UPDATE cSc_Role
SET RoleSettings = convert(VARBINARY(MAX),'0x343240000000000E637CA2A430500')
WHERE Naming = 'User X'
如果上述所有解决方案都不起作用,请尝试通过删除以下 ''
中的 ''
进行更新,
UPDATE cSc_Role
SET RoleSettings = 0x343240000000000E637CA2A430500
WHERE Naming = 'User X'
另外,避免在新的开发工作中使用这些数据类型(ntext、text 和 image),并计划修改当前使用它们的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
我在项目中遇到了同样的问题,您需要提供二进制数据作为十六进制值,而不是字符串。这个工具可以让你更新或插入你需要的
它为我节省了很多工时。
我有一个 table cSc_Role
列 RoleSettings
。
RoleSettings
是数据类型图像。
内容是这样的:0x504B030414000000080000000000E637CA2A4
现在我需要为一行更新此列。 像这样:
UPDATE cSc_Role
SET RoleSettings = '0x343240000000000E637CA2A430500'
WHERE Naming = 'User X'
但是对于二进制数据,这似乎不可能用字符串来完成。
另一种选择是,我可以在临时 .bak 文件中提供图像。
然后做一个INSERT INTO
。
但是我读过这个解决方案只能插入一个完整的行而不仅仅是一列。或者我可以使用 insert 只插入一列吗?
如何在 table 中更新或插入一个图像列? 提前致谢。
使用十六进制文字,x'34....'
UPDATE cSc_Role
SET RoleSettings = x'343240000000000E637CA2A430500'
WHERE Naming = 'User X'
尝试使用转换为 varbinary:
UPDATE cSc_Role
SET RoleSettings = convert(VARBINARY(MAX),'0x343240000000000E637CA2A430500')
WHERE Naming = 'User X'
如果上述所有解决方案都不起作用,请尝试通过删除以下 ''
中的 ''
进行更新,
UPDATE cSc_Role
SET RoleSettings = 0x343240000000000E637CA2A430500
WHERE Naming = 'User X'
另外,避免在新的开发工作中使用这些数据类型(ntext、text 和 image),并计划修改当前使用它们的应用程序。请改用 nvarchar(max)、varchar(max) 和 varbinary(max)。
我在项目中遇到了同样的问题,您需要提供二进制数据作为十六进制值,而不是字符串。这个工具可以让你更新或插入你需要的
它为我节省了很多工时。