char数组要怎么传到sql中并取回?内详

shuilehaojiucaixing 2009-02-19 10:40:18

type
Tuserinfo = record
name: string[12];
password:string[12];
Temp:Array[0..511] of Char;
end;
Puserinfo = ^Tuserinfo;

//添数据
Function add(user:Puserinfo):Boolean;
begin
with DM.ADOQuery1 do
begin
Append;
FieldByName('name').AsString:=user.name;
FieldByName('password').AsString:=user.password;
FieldByName('fpTemp').AsString:=user.Temp;//这样做肯定是会掉数据的:(
//FieldByName('fpTemp').AsVariant:=user.fpTemp;//这个也不行
//上面一行的错误提示[Error] Unit7.pas(52): Incompatible types: 'Variant' and 'Array'
Post;
end;
end;

//获得返回记录
procedure TForm7.Button5Click(Sender: TObject);
var
user:Puserinfo;
//a:array [0.511] of Char;
begin
new(user);
zeromemory(user,sizeof(Tuserinfo));
user.password:=Dm.ADOQuery1.Lookup('name','test','password');
user.fpTemp:=ADOQuery1.Lookup('name','test','fpTemp');//也是Incompatible types: 'Variant' and 'Array'的错误
DisPose(user);
showmessage(user.password);
end;


数据库sql2000 字段类型 name char 12 ;password char 12 ; fpTemp varchar 512;
...全文
54 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
my god,没分没人理!
我去赚两分来
  • 打赏
  • 举报
回复
char转换到string只会截取第一次出现#0以前的数据,我不要这样的。
要将包含很多个#0的char数组传到sql上不可以的吗
  • 打赏
  • 举报
回复
刚试了没用
bdmh 2009-02-19
  • 打赏
  • 举报
回复
StrPas(user.fpTemp),转换成字符串

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧