C#写上位机怎么把数组存到数据库相应字段

比如DATAbase 是mete,Table是m,字段有M1,M2,M3,数组是array,怎么写程序,麻烦详细写一下,谢谢

一)Access数据库

1) 设计表,将段M1,M2,M3的类型设置为"OLE对象"

2)写入数据库

//要写入数据库的数据
byte[] m1 = ……;
byte[] m2 = ……;
byte[] m3 = ……;
//数据库
OleDbConnection conn= new OleDbConnection("你的连接串"); 
conn.Open( )
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
cmd.CommandText = "INSERT INTO `m` (`M1, `M2', `M3`) VALUES (?, ?, ?)";
//添加参数
OleDbParameter p = cmd.Parameters.Add("m1", OleDbType.LongVarBinary);
p.Value = m1;
p = cmd.Parameters.Add("m2", OleDbType.LongVarBinary);
p.Value = m2;
p = cmd.Parameters.Add("m3", OleDbType.LongVarBinary);
p.Value = m3;
//执行
cmd.ExecuteNonQuery();

二)SQL Server

1)设计表,将段M1,M2,M3的类型设置为"varbinary(2000)" (2000是随意写的,根据实际情况,可以调整)

2)写入数据

//要写入数据库的数据
byte[] m1 = ……;
byte[] m2 = ……;
byte[] m3 = ……;
//数据库
SqlConnection conn= new SqlConnection("你的连接串"); 
conn.Open( )
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
cmd.CommandText = "INSERT INTO [m] ([m1], [m2], [m3]) VALUES (@m1, @m2, @m3)";
//添加参数
SqlParameter p = cmd.Parameters.Add("m1", SqlDbType.VarBinary);
p.Value = m1;
p = cmd.Parameters.Add("m2", SqlDbType.VarBinary);
p.Value = m2;
p = cmd.Parameters.Add("m3", SqlDbType.VarBinary);
p.Value = m3;
//执行
cmd.ExecuteNonQuery();

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-10-29
INSERT INTO METE(M1,M2,M3) VALUE(ARRAY[0],ARRAY[1],ARRAY[2])
第2个回答  2014-10-29
描述不够详细追问

还需要什么?

追答

你描述有问题,让回答人看不懂你要怎么做.
1,上位机三个字,和你的问题有什么关系.
2.array数据在哪来的.
3.array数据和数据库是在同一台电脑吗?
4,你写数据库名表名字段名干什么?跟问题也没有关系啊.

你的问题是不是要把array数组中的数据存在本地数据库m表中?

用C#怎样实时把上位机接收到的数据存入access数据库,要用哪些控件?怎样...
把收到的数据存入ACCESS数据库,只要掌握ACCESS数据的库的操作就可以了。通讯控件可以就C#的serialport或第三方控件(mscomm)等。存取数据,可以读取N个点后,再存库,也可以读一个点保存一次。取决于每个温度点时间间隔以及用户需求等。

c# 编写上位机程序,需要实时保存底层传送的数据,全部数据共20度兆,大神...
建议保存到数据库,用SQL SERVER Compact Edition(SQL CE)或Access都可以。数据库特别适合时序参量的保存。

c#上位机开发
1、上下位机以串口通讯居多,这方面例子你找个C#串口调试工具源码,需要的东西源码中基本上都有涉及。网口通讯涉及到socket编程,例子也很多。2、界面是C#的基础东西,主要与美工和C#控件有关。3、数据也没什好说的,主要是跟基础的数据类型比如数组、byte之类打交道,涉及通讯的时候对这些知识以及进制...

C#编写上位机程序如何建立数据缓存,将接收到的数据暂存,然后有专门的...
常用的那些端口 都是自带缓存的 不行的话你就自己开个数组 循环队列啥的不都行

C#学到什么程度可以写上位机
就好像在学C语言一样,有一个全套的学习模式,然后在学习过程中只要去学到需要在机器面前操作的过程,就可以进行上机这样子的一个过程。所以C#这样子的一个编程语言如果是想要学到上机的话,就需要把最基础的知识先全部弄懂,然后有相对的一些改错误的能力,就能够进行上机这样子的一个过程。

C#以太网上位机如何读取西门子PLC的IO点状态?
这取决于你使用的通信协议是什么,比如说你是用TCP\/IP还是MODBUS TCP。如果是TCP\/IP则PLC这边需要编写TCP服务器的程序,然后把需要对写的地址对应到相应的数据存储器里面去。如果使用MODBUS TCP,那么输入点和输出点会有对应的类型地址,如Q0.0地址为00001,I0.0地址为10001....

C#串口 上位机怎么向下位机发送命令和接收下位机上传的数据
2、先把你的协议转换为byte数据,具体的你自己拼写,下面的是把你的字符串转换为为ascII码,你的十六进制的其实是ascII码形式 ASCIIEncoding MyInfo = new ASCIIEncoding();byte[] MySend = MyInfo.GetBytes(AlarmCode);在数组中,起始位一般是0x02还是0x03啊,忘了,你自己看着拼一下 3、串口发送...

...传到监控中心后,怎么把数据存储SQL数据库中?
参数:pDataStruct:存放DTU所送上来的信息和数据的结构,读函数执行成功后,返回的数据存放到该参数指向的结构中 waitseconds:本函数读到数据后立即返回;如果没有数据到达,则等待最长waitseconds(时间单位:秒)的时间,直到有数据到达,取值范围从0~65535,如果取值为0表明本函数将立即返回。另外,当在另...

c#写的上位机能播放rtsp推流或rtmp推流的视频吗?
从抓包中可以清晰地看出,从查询服务器端可用方法(option)、交互媒体信息(ANNOUNCE\/DESCRIBE)、请求建立会话(SETUP)、触发数据传输(RECORD\/PLAY)、到关闭会话(TEARDOWN)的过程。总结而言,通过实践与测试,对ZLMediaKit流媒体服务器以及相关推拉流功能有了深入了解。下一步计划包括观察和学习obs软件的...

三菱PLC与PC 232通信,用C#编写上位机,想问一下,通讯的格式怎么弄?
485和232的区别是硬件不一样,连接线路不一样,232最少需要3根线,485需要2根线 com口,波特率,数据位等一样要设置 你说的应该是plc和上位机的通讯协议,厂家有明确定义,按bye数组填写就可以,发送后要判断返回值。

相似回答