COMANDO SQL
Pessoal bom dia,
Antes no VB6 montava o seguinte comando e executava numa boa.
BEGIN TRAN
UPDATE TB_TAL SET CAMPO = [ô]TESTE[ô] WHERE CAMPO2 = 11
INSERT INTO TABELA (CODIGO,NOME...) VALUES (1,[ô]JOAO[ô]...)
IF @@ERROR > 0
ROLLBACK TRAN
ELSE
COMMIT TRAN
COMO POSSO EXECUTAR ESSE COMANDO NO C#?
Antes no VB6 montava o seguinte comando e executava numa boa.
BEGIN TRAN
UPDATE TB_TAL SET CAMPO = [ô]TESTE[ô] WHERE CAMPO2 = 11
INSERT INTO TABELA (CODIGO,NOME...) VALUES (1,[ô]JOAO[ô]...)
IF @@ERROR > 0
ROLLBACK TRAN
ELSE
COMMIT TRAN
COMO POSSO EXECUTAR ESSE COMANDO NO C#?
using System.Data.SqlClient;
using System.Data;
private SqlConnection Con = new SqlConnection([Ô]SUA_STRING[Ô]);
public void Insere()
{
using (SqlCommand comando = new SqlCommand([Ô]INSERT INTO.....[Ô],Con))
{
int contador = comando.ExecuteNonQuery();
if (contador > 0)
{
MessageBox.Show([Ô]Comando executado com sucesso![Ô]);
}
else
{
MessageBox.Show([Ô]O comando nao foi executado![Ô]);
}
}
}
Então amigo obrigado mais isso eu sei executar um comando normal.
Mais quando vou executar da seguinte forma passada anteriormente, com Begin Tran, Commit Tran e Rollback Tran na mesma string da erro.
Não tenho como passar o erro agora pois nao estou mexendo com C# nesse momento.
Mais a duvida é gostaria de ter Begin Tran, Commit Tran e Rollback Tran na minha string SQL.
Mais esta dando erro.
Mais quando vou executar da seguinte forma passada anteriormente, com Begin Tran, Commit Tran e Rollback Tran na mesma string da erro.
Não tenho como passar o erro agora pois nao estou mexendo com C# nesse momento.
Mais a duvida é gostaria de ter Begin Tran, Commit Tran e Rollback Tran na minha string SQL.
Mais esta dando erro.
fala ai meu camarada tenta assim,
crie um botão com a conexão faça o teste
classes para importar
using System.Data;
using System.Data.SqlClient;
protected void Button4_Click(object sender, EventArgs e)
{
CM.Connection = CN;
CN.Open();
Tran = CN.BeginTransaction();
CM.Transaction = Tran;
try
{
CM.CommandText = [Ô]Insert Into Clientes(Codigo,Nome,Endereco,Idade) [Ô] +
[Ô]Values[Ô] +
[Ô](76,[ô]teste[ô],[ô]casa c[ô],15)[Ô];
CM.ExecuteNonQuery();
Tran.Commit();
Response.Write([Ô]Ok[Ô]);
}
catch
{
Tran.Rollback();
Response.Write([Ô]Deu pau!!![Ô]);
}
}
abraço mano!
crie um botão com a conexão faça o teste
classes para importar
using System.Data;
using System.Data.SqlClient;
protected void Button4_Click(object sender, EventArgs e)
{
CM.Connection = CN;
CN.Open();
Tran = CN.BeginTransaction();
CM.Transaction = Tran;
try
{
CM.CommandText = [Ô]Insert Into Clientes(Codigo,Nome,Endereco,Idade) [Ô] +
[Ô]Values[Ô] +
[Ô](76,[ô]teste[ô],[ô]casa c[ô],15)[Ô];
CM.ExecuteNonQuery();
Tran.Commit();
Response.Write([Ô]Ok[Ô]);
}
catch
{
Tran.Rollback();
Response.Write([Ô]Deu pau!!![Ô]);
}
}
abraço mano!
opa faltou declarar o tipo da variavel Tran:
ficaria assim
protected void Button4_Click(object sender, EventArgs e)
{
SqlTransaction Tran;
CM.Connection = CN;
CN.Open();
Tran = CN.BeginTransaction();
CM.Transaction = Tran;
try
{
CM.CommandText = [Ô]Insert Into Clientes(Codigo,Nome,Endereco,Idade) [Ô] +
[Ô]Values[Ô] +
[Ô](76,[ô]teste[ô],[ô]casa c[ô],15)[Ô];
CM.ExecuteNonQuery();
Tran.Commit();
Response.Write([Ô]Ok[Ô]);
}
catch
{
Tran.Rollback();
Response.Write([Ô]Deu pau!!![Ô]);
}
}
ficaria assim
protected void Button4_Click(object sender, EventArgs e)
{
SqlTransaction Tran;
CM.Connection = CN;
CN.Open();
Tran = CN.BeginTransaction();
CM.Transaction = Tran;
try
{
CM.CommandText = [Ô]Insert Into Clientes(Codigo,Nome,Endereco,Idade) [Ô] +
[Ô]Values[Ô] +
[Ô](76,[ô]teste[ô],[ô]casa c[ô],15)[Ô];
CM.ExecuteNonQuery();
Tran.Commit();
Response.Write([Ô]Ok[Ô]);
}
catch
{
Tran.Rollback();
Response.Write([Ô]Deu pau!!![Ô]);
}
}
E ai Luiz de boa mano?
Dessa forma eu ja fiz me deu algum problema, mais foi pela estrutura da minha classe.
Eu gostaria mesmo que houvesse um modo mais simples mesmo, tudo em uma instrução somente e executar!
Quando chegar em casa vou fazer dessa forma e qualquer problema mando aqui novamente!
Abraço mano!
Dessa forma eu ja fiz me deu algum problema, mais foi pela estrutura da minha classe.
Eu gostaria mesmo que houvesse um modo mais simples mesmo, tudo em uma instrução somente e executar!
Quando chegar em casa vou fazer dessa forma e qualquer problema mando aqui novamente!
Abraço mano!
Tópico encerrado , respostas não são mais permitidas