往数据库插入数据时,将txt文件上传至数据库中,喷码端读取后,逐条进行喷印。
SQL SERVER采用filestream存储文件,存储文件保存在服务本地器磁盘中,同时在数据表work_order_table中,新增字段TraceCode存储追溯码文件数据,喷印端读TraceCode内容,还原处理后进行喷印使用。
数据库添加文件组
ALTER database yingke
add filegroup MyFileStreamGroup
contains filestream
配置文件组磁盘存放地址
ALTER database yingke add file
(
Name = 'yingke_FileStream',
FileName = 'D:\yingke_FileStream.ndf'
) TO filegroup MyFileStreamGroup
执行结束后,会在服务器本地磁盘生成对应的路径。
数据表(work_order_table)中增加存放追溯码的字段(TraceCode)
alter table work_order_table add
TraceCode VARBINARY(MAX) FILESTREAM NULL,
RowGuid UNIQUEIDENTIFIER NOT NULL ROWGUIDCOL
UNIQUE DEFAULT NEWID();
插入数据
INSERT INTO work_order_table
VALUES('21321321','AAA','343','153534','432432','3333','21321321321','444444','55555555','2019-12-12 12:43:01','777777',
'999999','5000000','冷藏','21321','765','534534','21321','T123','0',(SELECT *
FROM OPENROWSET(BULK 'd:\Users\Administrator\Desktop\丙型肝炎病毒抗体诊断试剂盒(酶联免疫法)_20220627-001_8413087000000000-001_盒96人份_1.txt',
SINGLE_BLOB) AS Data),newid())
GO
插入数据结束后,存放地址中会生成一份不带后缀的文件,文件重命名补充对应的后缀后,可以直接打开。
同时在work_order_table中TraceCode字段会保存追溯码文件数据,读取TraceCode内容还原后使用。
获取的追溯码数据。
上传将数据转为16进制回传即可。