Anotação Hibernate para alterar onUpdate e onDelete para no action

Oie … Estou programando a pouco tempo e aqui quebrando a cabeça para alterar a minha anotação que altere o meu banco, porém nada que eu faço altera.
No banco, os meus campo onUpdate e onDelete só ficam como RESTRICT então preciso de ajuda!
Vou detalhar mais…

Preciso fazer com que a minha anotação fique igual a essa

CREATE TABLE `tb_distrito` (
	`id_distrito` CHAR(32) NOT NULL,
	`no_distrito` VARCHAR(50) NOT NULL,
	`co_mec` INT(10) NULL DEFAULT NULL,
	`id_pais` INT(10) NOT NULL,
	`id_uf` INT(10) NULL DEFAULT NULL,
	`id_cidade` INT(10) NULL DEFAULT NULL,
	PRIMARY KEY (`id_distrito`),
	INDEX `FK1_distrito` (`id_pais`),
	INDEX `FK2_distrito` (`id_uf`),
	INDEX `FK3_distrito` (`id_cidade`),
	CONSTRAINT `FK1_distrito` FOREIGN KEY (`id_pais`) REFERENCES `tbd_pais` (`id_pais`) ON UPDATE NO ACTION ON DELETE NO ACTION,
	CONSTRAINT `FK2_distrito` FOREIGN KEY (`id_uf`) REFERENCES `tbd_uf` (`id_uf`) ON UPDATE NO ACTION ON DELETE NO ACTION,
	CONSTRAINT `FK3_distrito` FOREIGN KEY (`id_cidade`) REFERENCES `tbd_cidade` (`id_cidade`) ON UPDATE NO ACTION ON DELETE NO ACTION
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB;

Meu código Java

....
@Entity
@Table(name="tb_distrito")
public class Distrito implements Serializable {
	
	private static final long serialVersionUID = 5327030336417805790L;	
	private String id;
	private String nome;
	private Integer codigoMEC;
	private Pais pais;
	private Estado estado;
	private Cidade cidade;
	
	@Id @GeneratedValue(generator="system-uuid")
	@GenericGenerator(name="system-uuid", strategy="uuid")
	@Column(name="id_distrito",columnDefinition="CHAR(32)" , length=32, nullable=false)
	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}
	
	@Column(name="no_distrito", length=50, nullable=false)
	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
	
	@Column(name="co_mec", columnDefinition="INT(10)", length=10)
	public Integer getCodigoMEC() {
		return codigoMEC;
	}

	public void setCodigoMEC(Integer codigoMEC) {
		this.codigoMEC = codigoMEC;
	}	
	
	//@OneToMany(cascade=CascadeType.ALL)
	@ManyToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST}, fetch=FetchType.LAZY, optional= false)
    @JoinColumn(name="id_pais", columnDefinition="INT(10)")
	public Pais getPais() {
		return pais;
	}

	public void setPais(Pais pais) {
		this.pais = pais;
	}	
	
	@ManyToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST}, fetch=FetchType.LAZY)
    @JoinColumn(name="id_uf",columnDefinition="INT(10)")
	public Estado getEstado() {
		return estado;
	}

	public void setEstado(Estado estado) {
		this.estado = estado;
	}	
	
	@ManyToOne(cascade = {CascadeType.MERGE, CascadeType.PERSIST}, fetch=FetchType.LAZY)
    @JoinColumn(name="id_cidade",columnDefinition="INT(10)")
	public Cidade getCidade() {
		return cidade;
	}

	public void setCidade(Cidade cidade) {
		this.cidade = cidade;
	}
}

E este código está gerando a tabela no meu banco assim:

CREATE TABLE `tb_distrito` (
	`id_distrito` CHAR(32) NOT NULL,
	`co_mec` INT(10) NULL DEFAULT NULL,
	`no_distrito` VARCHAR(50) NOT NULL,
	`id_cidade` INT(10) NULL DEFAULT NULL,
	`id_uf` INT(10) NULL DEFAULT NULL,
	`id_pais` INT(10) NOT NULL,
	PRIMARY KEY (`id_distrito`),
	INDEX `FK125CB449A21A3F14` (`id_uf`),
	INDEX `FK125CB4494C833365` (`id_cidade`),
	INDEX `FK125CB449EA47EE13` (`id_pais`),
	CONSTRAINT `FK125CB449EA47EE13` FOREIGN KEY (`id_pais`) REFERENCES `tbd_pais` (`id_pais`),
	CONSTRAINT `FK125CB4494C833365` FOREIGN KEY (`id_cidade`) REFERENCES `tbd_cidade` (`id_cidade`),
	CONSTRAINT `FK125CB449A21A3F14` FOREIGN KEY (`id_uf`) REFERENCES `tbd_uf` (`id_uf`)
)
COLLATE='latin1_swedish_ci'
ENGINE=InnoDB;

Podem reparar que CONSTRAINTS tem nome diferentes e que as opções ON UPDATE NO ACTION ON DELETE NO ACTION não aparecem… :shock:

Agradeço desde já!
[]s… :wink:

Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?

[quote=drsmachado]Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?[/quote]

Entendi …
Nuss Muito Obrigada!!!

[]s…
Ótimo fim de semana!

[quote=Mahh][quote=drsmachado]Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?[/quote]

Entendi …
Nuss Muito Obrigada!!!

[]s…
Ótimo fim de semana![/quote]
Imagina, precisando, só postar.
Aliás, o hibernate trabalha assim, só coloca código que será necessário.

Pra ti também, um ótimo fim de semana.

[quote=Mahh][quote=drsmachado]Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?[/quote]

Entendi …
Nuss Muito Obrigada!!!

[]s…
Ótimo fim de semana![/quote]

Hum para complementar falando com um amigo, ele só complementou o que você me disse me mostrando na documentação.
RESTRICT: Rejects the delete or update operation for the parent table. Specifying RESTRICT (or NO ACTION) is the same as omitting the ON DELETE or ON UPDATE clause.
http://dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html
O bacana que aqui diz que não há diferença… :wink:
[]s…

[quote=Mahh][quote=Mahh][quote=drsmachado]Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?[/quote]

Entendi …
Nuss Muito Obrigada!!!

[]s…
Ótimo fim de semana![/quote]

Hum para complementar falando com um amigo, ele só complementou o que você me disse me mostrando na documentação.
RESTRICT: Rejects the delete or update operation for the parent table. Specifying RESTRICT (or NO ACTION) is the same as omitting the ON DELETE or ON UPDATE clause.
http://dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html
O bacana que aqui diz que não há diferença… :wink:
[]s…
[/quote]
Ao menos não falei bobagem.

[quote=drsmachado][quote=Mahh][quote=Mahh][quote=drsmachado]Pode ser que eu esteja falando besteira, mas, se onUpdate = no action, não é o mesmo que não colocar o onUpdate na cláusula?
Pois a idéia do no action é justamente não fazer nada ao ocorrer um evento de atualização. Não colocar o código indica que nada irá ocorrer quando uma atualização for realizada.
Ou seja, não faz nada = não faz nada. Se não vai ter ação, não precisa colocar no código.
É quase a mesma coisa dos zeros à esquerda em valores numéricos. Se não altera, para que colocar?[/quote]

Entendi …
Nuss Muito Obrigada!!!

[]s…
Ótimo fim de semana![/quote]

Hum para complementar falando com um amigo, ele só complementou o que você me disse me mostrando na documentação.
RESTRICT: Rejects the delete or update operation for the parent table. Specifying RESTRICT (or NO ACTION) is the same as omitting the ON DELETE or ON UPDATE clause.
http://dev.mysql.com/doc/refman/5.6/en/innodb-foreign-key-constraints.html
O bacana que aqui diz que não há diferença… :wink:
[]s…
[/quote]
Ao menos não falei bobagem.[/quote]

Claro que não!!! E muito obrigada novamente!!! :wink: []s…