我在sql server里面定义了一个binary(1604)的字段,里面存储的是401个single类型的数据,我现在怎么也读不出来,给位高手帮我看看。
Stream: TBlobStream;
Stream := TBlobStream.Create(Query1.FieldByName('f_BValue') As TblobField , bmRead);
执行这条语句报错,说什么类型转换错误
Stream: TBlobStream;
Stream := TBlobStream.Create(Query1.FieldByName('f_BValue') As TblobField , bmRead);
执行这条语句报错,说什么类型转换错误
解决方案 »
- 低版本写的程序迁移到高版本???
- 怎么提取一个字段里的指定的数据?求助!
- 新手问题:Delphi有没有象C语言一样的冒号运算符?
- 关于dbgrid控件的行操作
- 请问SpinEdit中的OnChange、OnClick、OnEnter有什么区别和联系???
- 请教各位:如何检测到键盘发出的控制字符?
- 谁有InstallShield Express 3.51 的安装密码?
- 求TcxComboBox控件,请发到[email protected]
- delphi编的程序要打印东西,怎么设置打印的行距?
- 用DELPHI如何象用VB那样按下BUTTON按钮来打开一个应用程序,谢谢
- dbimage 相片如何保存的问题
- Delphi怎样连接远程数据库?
Query1.FieldByName('f_BValue').ClassName
是啥内容。
如:
create table ttt (id integer,dat binary(1604))
这样就可以
procedure TForm1.Button2Click(Sender: TObject);
VAR
MS: TMemoryStream;
buff:array [0..1604] of char; //按你的要求也可定义为buff array[0..401] of integer
begin
ADOQuery1.Close;
ADOQuery1.SQL.Text:='select id,dat from ttt where id=1';
ADOQuery1.Open;
Edit1.Text:=IntToStr(ADOQuery1.FieldValues['id']);
(ADOQuery1.FieldByname('dat') AS TBinaryField).GetData(@buff);//结果在buff中
end;
这行不要