Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var stSQLText :String;
- begin
- //Não há departamentos, nada a fazer!
- if cbDepNum.Items.Count = 0 then
- Exit;
- with TSQLQuery.Create(Nil) do
- Try
- Try
- DataBase := Mainform.aSQLConnection;
- Transaction := Mainform.aSQLConnection.Transaction;
- //Prepara o SQL a submeter à BD
- stSQLText := 'Insert into Empregado(EmpNum, Nome, Categoria, Salario, DepNum) ';
- stSQLText := stSQLText + ' values (:EmpNum, :Nome, :Categoria, :Salario, :DepNum)';
- //Set do comando SQL para inserir um empregado
- Sql.Text:= stSQLText;
- SQLTransaction.StartTransaction;
- Prepare;
- ParamByName('EmpNum').AsString:= edEmpNum.Text;
- ParamByName('Nome').AsString:= edEmpNome.Text;
- ParamByName('Categoria').AsString:= edEmpCat.Text;
- ParamByName('Salario').AsString:= edEmpSal.Text;
- ParamByName('DepNum').AsString:= cbDepNum.Items[cbDepNum.ItemIndex];
- //Insere na base de dados
- ExecSQL;
- SQLTransaction.Commit;
- //Fecha o diálogo!
- ModalResult := mrOk;
- Except
- On E :Exception do
- begin
- //Faz o Roolback da transação (e volta ao modo Auto-Commit)
- SQLTransaction.Rollback;
- ShowMessage(E.Message);
- end;
- end;
- finally
- Free;
- end;
- end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement