delphi的memo问题,怎么将在memo中输入换行后的多行数据都保存到数据库的一个字段下面
我的代码如下:
if not SameText(trim(Memo2.Lines.Text),'') then
begin
rzms:=Memo2.Lines.Text;//Memo2是在界面上接收输入的数据
rzID:='R'+FormatDateTime('yyyymmddhhmmss',Now());
With ADOQuery2 do
begin
Close;
SQL.Clear;
sqlstr:='insert into hrp_rwrz values('''+rzID+''','''+s+''','''+rwsxbs+''','''+datetimetostr(now)+''','''+rzms+''')';
SQL.Add(sqlstr);
ExecSQL;
end;
end;
在memo2中我输入以下数据:
a(回车后换行)
b
结果只要a被保存了,但是b没有被保存到这个数据库的nvarchar字段下
我的代码如下:
if not SameText(trim(Memo2.Lines.Text),'') then
begin
rzms:=Memo2.Lines.Text;//Memo2是在界面上接收输入的数据
rzID:='R'+FormatDateTime('yyyymmddhhmmss',Now());
With ADOQuery2 do
begin
Close;
SQL.Clear;
sqlstr:='insert into hrp_rwrz values('''+rzID+''','''+s+''','''+rwsxbs+''','''+datetimetostr(now)+''','''+rzms+''')';
SQL.Add(sqlstr);
ExecSQL;
end;
end;
在memo2中我输入以下数据:
a(回车后换行)
b
结果只要a被保存了,但是b没有被保存到这个数据库的nvarchar字段下
if not SameText(trim(Memo2.Lines.Text), '') then
begin
rzms := Memo2.Lines.Text; //Memo2是在界面上接收输入的数据
rzID := 'R' + FormatDateTime('yyyymmddhhmmss', Now());
with ADOQuery2 do
begin
Close;
SQL.Clear;
sqlstr := 'insert into hrp_rwrz values(''' + rzID + ''',''' + s + ''',''' + rwsxbs + ''',''' + datetimetostr(now) + ''',:rzms)';
SQL.Add(sqlstr);
Parameters.ParamByName('rzms').Value := rzms;
ExecSQL;
end;
end;
这句话执行怎么有错误啊,
Parameters.ParamByName('rzms').Value := rzms;
说rzms找不到
我已经声明定义rzms:string;
数据库里面这个字段是:ms
但我换了还不行啊
如果是MEMO类型的字段还是出这种问题的话,你就用转义,将回车换行符替换成\n之类的转义符,在下次读取出来后在换回来就行了。
我记得MEMO类型的貌似没这个问题