Mscomm从串口读进来的数据放哪呀?(100分)

  • 主题发起人 主题发起人 coconut123
  • 开始时间 开始时间
C

coconut123

Unregistered / Unconfirmed
GUEST, unregistred user!
是放在缓冲区吗?那要想数据读入当地计算机的数据库该怎么做呀!
谢谢了!
 
先放缓冲区,然后放数据库
 
是放緩沖區,好象有方法的,不是很清楚。
一年多前寫過MSCOMM的程序,現在忘了。
 
move
到 变量
处理 变量
存入数据库
 

s;=MSComm1.input;
...
// 把S写入你的数据库!
 
to伊天仇
应该怎么写入数据库呢?
平常对数据库的修改是通过DBGrid来实现的,
现在这个好像不行吧?
 
table的话就 table.fieldbyname('字段名').value:=s;(注意类型匹配)
query的话就 update tablename set 字段名=:s
 
我先试了一下通过你说那样给table赋值
table.fieldbyname('dd').value:=11;
可是他说dataset not in edit or insert mode
这是怎么回事呢?
 
接收时:
下面的代码是接收串口信息的例子。要注意的是MSCOMM的文字属性为二进制。
procedure TForm1.MSComm1Comm(Sender: TObject);
var
Mbuffer:variant;
arr: array of byte;
K_sum:integer;
OutputString:string;
ArrayLength:integer;
begin
arr:=nil;
if mscomm1.CommEvent =2 then begin
mbuffer:=mscomm1.Input ;
arr:=mbuffer;
if arr=nil then exit;
.
.
.
end;
.
.
.
end;
 
coconut123:
先设置table.edit:=true 就行了
 
多人接受答案了。
 
后退
顶部