AUTONUMERACAO
Boa tarde
Eu preciso colocar um campo txtCodigo que apareça o último número que foi gravado na tabela +1 qdo eu chamar o form.
Eu fazia assim em vb6
Dim rs As New Recordset
Dim cod As Integer
rs.Open [Ô]Clientes[Ô], CONEXAO, adOpenKeyset, adLockPessimistic
With rs
If .EOF = False Then
.MoveLast
cod = Val(!Codigo) + 1
Else
cod = 1
End If
txtCodigo.Text = cod
End With
Se alguém tiver um modelo p/ me ajudar, agradeço muito.
Obrigado a todos
Eu preciso colocar um campo txtCodigo que apareça o último número que foi gravado na tabela +1 qdo eu chamar o form.
Eu fazia assim em vb6
Dim rs As New Recordset
Dim cod As Integer
rs.Open [Ô]Clientes[Ô], CONEXAO, adOpenKeyset, adLockPessimistic
With rs
If .EOF = False Then
.MoveLast
cod = Val(!Codigo) + 1
Else
cod = 1
End If
txtCodigo.Text = cod
End With
Se alguém tiver um modelo p/ me ajudar, agradeço muito.
Obrigado a todos
Tente assim:
Imports System.Data.OleDb
Dim con As New OleDbConnection([Ô]Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Temp\Nwind.mdb[Ô])
Dim da As New OleDbDataAdapter([Ô]SELECT MAX(EmployeeId) + 1 FROM Employees[Ô], con)
Dim dt As New DataTable
da.Fill(dt)
Label1.Text = dt.Rows(0).Item(0).ToString
dt.Dispose()
da.Dispose()
TECLA.muito obrigado
Ficou perfeito
Valeu
Ficou perfeito
Valeu
MInha maneira:
Tecla, como só vai ser retornado o primeiro valor da primeira coluna é mais eficaz a utilização do method ExecuteScalar do OleDbCommand ao invés de preencher um datatable.
Att.
OleDbConnection con = new OleDbConnection(@[Ô]Provider=Microsoft.Jet.OLEDB.4.0; Data Source=D:\Temp\Nwind.mdb[Ô])
OleDbCommand c = new OleDbCommand([Ô]SELECT MAX(EmployeeId) + 1 FROM Employees[Ô], con);
string retorno = Convert.ToString(c.ExecuteScalar());
c.Dispose();
con.Dispose();
Tecla, como só vai ser retornado o primeiro valor da primeira coluna é mais eficaz a utilização do method ExecuteScalar do OleDbCommand ao invés de preencher um datatable.
Att.
Tópico encerrado , respostas não são mais permitidas