保存TEXT字段时偶尔会死机,请求帮助。(100分)

  • 主题发起人 主题发起人 li_qh
  • 开始时间 开始时间
L

li_qh

Unregistered / Unconfirmed
GUEST, unregistred user!
bc.Close;
bc.SQL.Clear;
bc.SQL.Add('update ywgzbg set bgr=:bgr,psr=:psr,bgrr=:bgrr,bgrq=:bgrq,psyn=:psyn');
bc.sql.add('where bh=:bh');
bc.ParamByName('bh').AsInteger:=czbh;
bc.paramByName('bgr').asstring:=edit2.Text;
bc.paramByName('psr').asstring:=combobox2.Text;
bc.paramByName('bgrq').Asdatetime:=DateTimePicker2.date;
bc.paramByName('psyn').asstring:='S';
bc.ParamByName('bgrr').AsMemo:=memo2.Lines.Text;
bc.Prepare;
bc.execsql;

我的程序在运行到这里时有时会死机,有时又不会,不知问题在哪里。
倒数第三行,其中bgrr是TEXT字段,用来保存memo2控件的内容。memo2是用户用来输入文
字内容的控件,文字内容有时会很多。

谢谢。
 
如果是在文字太多的情况下死机,那就建议你,可以用blob数据类型来保存数据,因为我自
己对memo2的数据是这样做的,没有死机。
 
用clob类型存储数据
 
可我不知道blob是什么类型,
何况我的数据库类型找不到这种类型,我用的SQL 7.0。


 
又不是要把文件本身存进去,为什么要用blob?
另外,有AsMemo的吗?
直接用bc.ParamByName('bgrr').AsString:=memo2.Text //不要lines
 
直接用bc.ParamByName('bgrr').AsString:=memo2.Text //不要lines

这是我最早用的方法了。但还是会偶尔死机。

有asmemo这种用法的。
 
直接用bc.ParamByName('bgrr').AsString:=memo2.Text //不要lines

这是我最早用的方法了。但还是会偶尔死机。

有asmemo这种用法的。
 
sql server 7.0当然支持clob类型数据,你再建表时将该字段定义为clob型,
然后用dbmemo关联该字段,试试
 
chenliang_fly:你好。

谢谢你的指教,但我在建表时找不到有CLOB这样的类型。

因功能的限制,我不想用DBMEMO关联该字段。

你觉得是SQL的问题,还是我程序本身的问题呢。
 
lob类型对数据量大数据处理速度快,声音、图像、等数据量大的字段都可以定义为lob型数据
 
我只看到以下这些类型:
CHAR VARCHAR INT SMALLINT TINYINT FLOAT MONEY TEXT BINARY
VARBINARY IMAGE BIT DATETIME TIMESTAMP REAL SMALLMONEY
SMALLDATETIME DECIMAL NUMERIC
 
不知道你用什么工具进行建库,你直接用sql语句建表试试
create table table_name
(
...
dd clob (2 m) //2m为你分配给该字段的空间大小
...
)
你的sql查询语句没问题

 
不好意思,我是个SQL新手。我用的是DELPHI 6里的DATABASE DESKTOP工具建库。

 
我需要的字段有:BH(编号),PSR(批示人),PSRQ(批示日期),PSYN(批示否),
BGR(报告人),BGRQ(报告日期),PSRR(批示内容),BGRR(报告内容)

能否为我写一个用SQL语句创建该表的语句呢,我对SQL不熟。
 
clob型在[gold]db2[/gold]种定义,sql server 以前常用,现在有些生了。
DATABASE DESKTOP一般只适用于本地数据库的建立,
推荐你用sql server 自身的建库工具,
http://soft.km169.net/soft/html/3220.htm 中有关于它的书,看一看
 
好的,我去试一试,谢谢你,chenliang_fly,
 
create table people
(
BH char (10) primary key,
PSR char (10),
PSRQ date,
PSYN char(10);
....
PSRR clob (2 m),
BGRR clob (2 m)
)
实施
 
text 和 clob 类型差不多
 
好像不行呢。
 
你先将update 语句中的bgrr字段去掉试试
 
后退
顶部