SQLQuery1.SQL.Add(','+QuotedStr('<br> <span style="font-weight: bold">来电精灵专业版,')); //这个是错误的,原因是有双引号,会报错 SQLQuery1.SQL.Add(','+QuotedStr('<br> <span style=""font-weight: bold"">来电精灵专业版,')); //这个就正确,能入库,但入库里多了个"双引号 SQLQuery1.SQL.Add(','+QuotedStr('<br> <span style=font-weight: bold>来电精灵专业版,')); //这个也正确,但没有了"双引号这个怎么解决啊,入库时一定要是 <br> <span style="font-weight: bold">来电精灵专业版, 这个字符串,双引号不能变
用参数来传 with qrya do
begin
Close;
SQL.Clear;
SQL.Add('insert into a (name,swx) values (:a, :b)');
Parameters.ParamByName('a').Value := ' <br> <span style="font-weight: bold">来电精灵专业版';
Parameters.ParamByName('b').Value := 'tst';
ExecSQL;
end;
这样写用到不好封装啊,偶代码是封装到一个函数里面的,然后传入要查询的SQL语句双引号是一定要有的
procedure InsertA(ASql: string);
begin
with qrya do
begin
Close;
ParamCheck := false;
SQL.Text := ASql;
ExecSQL;
end;
end;procedure BtnOkClick(Sender: TObject);
var
strSql: string;
begin
strSql := 'insert into a (name,swx) values ('
+ #39 + '<br> <span style="font-weight: bold">来电精灵专业版' + #39
+ ',' + #39 + 'test' + #39
+ ')';
InsertA(strSql);
end;
是这个的问题,解决了