SQLserver数据库中更改力学设备自动采集的数据

SQLserver数据库查询、更新(二进制图片替换)

1、在数据库[AcsInterface_graph]中查询前1000行数据
SELECT TOP 1000 * FROM [dbo].[AcsInterface_graph]

2、在数据库[AcsInterface_graph]中查询[sysPrimaryKey]为28888A25000000000999的结果
SELECT TOP 1000 * FROM [dbo].[AcsInterface_graph] WHERE [sysPrimaryKey] LIKE N'%28888A25000000000999%'

3、在数据库[AcsInterface_graph]中更新[ACSData]为?
筛选条件:[UnitCode] = '2100001' AND [sysPrimaryKey] = '28888A25000000000999' AND [ColumnName] = 'JiXiangHeZai1'

曲线更改
当曲线为图片格式(S)时,将下面代码中的[ACSData] = ? 的?改为需要替换图片的二进制数据即可,直接导出要替换的数据的sql脚本文件,可直接提取二进制数据
如果txt导出的为Base64 字符串,可使用以下代码,直接把 Base64 字符串硬编码进去
UPDATE [dbo].[AcsInterface_graph]
SET [ACSData] = CAST(N'' AS XML).value('xs:base64Binary(''?'')', 'VARBINARY(MAX)')
WHERE [UnitCode] = '2100011'
AND [sysPrimaryKey] = '28888A25000000000999'
AND [ColumnName] = 'JiXiangHeZai2';
当曲线非图片格式(J)时,可直接复制粘贴即可(本地服务器只存采集的数据,包含曲线数据以及标签打印需要的相关数据,其余数据均存在云端服务器中,且无法在本地服务器进行修改)
?表示导出的数据的sql脚本文件中曲线数据的二进制数据

UPDATE [dbo].[AcsInterface_graph] SET [ACSData] = ? WHERE [UnitCode] = '2100001' AND [sysPrimaryKey] = '28888A25000000000999' AND [ColumnName] = 'JiXiangHeZai1'

4、在数据库[AcsInterface_graph]中查询筛选条件:[UnitCode] = '2100001' AND [sysPrimaryKey] = '28888A25000000000999' AND [ColumnName] = 'JiXiangHeZai1'的结果
SELECT TOP 1000 * FROM [dbo].[AcsInterface_graph] WHERE [UnitCode] = '2100001' AND [sysPrimaryKey] = '28888A25000000000999' AND [ColumnName] = 'JiXiangHeZai1'

--前5行
select top 5 * from table

--后5行
select top 5 * from table order by id desc --desc 表示降序排列 asc 表示升序

posted @ 2026-01-22 10:37  九煜  阅读(11)  评论(0)    收藏  举报