sql >> Databasteknik >  >> RDS >> Mysql

delphi dxExpress MySQL:ogiltigt LAST_INSERT_ID-värde

Du bör få ID:t på en gång

SQLQry := TSQLQuery.Create(self);
with SQLQry do begin
  SQLConnection := SQLCon;

  SQL.Add('INSERT INTO Sample_Table ');
  SQL.Add('(mobile_number, message_body) VALUES');
  SQL.Add(format('(%s, %s);',[QuotedStr('989121011689'), QuotedStr('Text1')]));

  SQL.Add('SELECT LAST_INSERT_ID() EngineRefNo;');

  Open;
  ListBox1.items.Add(FieldByName('EngineRefNo').AsString);
  Close;
end;

SQLCon.Close;

och du bör tänka på att använda parametrar för att förhindra sql-injektion

SQLQry := TSQLQuery.Create(self);
with SQLQry do begin
  SQLConnection := SQLCon;

  SQL.Add('INSERT INTO Sample_Table ');
  SQL.Add('( mobile_number, message_body ) VALUES');
  SQL.Add('( :mobile_number, :message_body );');

  SQL.Add('SELECT LAST_INSERT_ID() EngineRefNo;');

  ParamByName( 'mobile_number' ).Value := '989121011689';
  ParamByName( 'message_body' ).Value := 'Text1';

  Open;
  ListBox1.items.Add(FieldByName('EngineRefNo').AsString);
  Close;
end;

SQLCon.Close;


  1. Mysql find_in_set snedstreck( / ) separator

  2. Uppdatera en MySQL-tabell med värden från en annan

  3. APPLSYSPUB-schema

  4. Hur skriver jag data från R till PostgreSQL-tabeller med en autoinkrementerande primärnyckel?