我在Mysql中建立了一个表:Create table t (t text)
然后插入一条记录:insert into t (t) values("\":")
在Mysql中是通过的。

但是我在DELPHI7.0里就是通不过。

代码如下:
uses ADODB,DB;

procedure aaa();
var
  Connect:TADOConnection;
  Command:TADOCommand;
begin
  Connect:=TADOConnection.Create(nil);
  Connect.ConnectionString:='DRIVER={MySQL ODBC 3.51 Driver};\SERVER=svr;\DATABASE=test;\USER=root;\PASSWORD=123456;\OPTION=3;';
  Connect.LoginPrompt:=False;
  Connect.Connected:=True;
  Command:=TADOCommand.Create(nil);
  Command.Connection:=Connect;
  try
    Connect.BeginTrans;
    Command.CommandText:='insert into t (t) values("\":")';
    Command.Execute;
    Connect.CommitTrans;
  except
    Connect.RollbackTrans;
  end;
end;

这段语句就是报错,但是如果改成别的字符串就是正确通过的。
我用的是Mysql5.0和MyODBC3.51.12。
而且我在SQL Server2000上也试过了,仍然报错。