Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

delphi dxExpress MySQL:nilai LAST_INSERT_ID tidak valid

Anda harus mendapatkan ID sekaligus

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;

dan Anda harus berpikir tentang menggunakan parameter untuk mencegah injeksi sql

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dapatkan ID tabel setelah dimasukkan dengan ColdFusion dan MySQL

  2. Teks lengkap pencarian elastis vs teks lengkap mysql?

  3. Bagaimana cara mengecek kebocoran Database Connection pada aplikasi Java EE?

  4. Perbarui langsung Data MySQL

  5. Amazon EC2, mysql mulai membatalkan karena InnoDB:mmap (x byte) gagal; kesalahan 12