Jump to content

Consulta por data a sql server


AprendizNovo
 Share

Recommended Posts

Boas, sou novo em programação

Como posso fazer uma consulta a base de dados sql server para verificar se já foi inserida aquela data.

. inseri ficheiro de texto em datagrid, todos os dados são string

.depois queria gravar na base de dados, mas antes queria consultar a base de dados para não repetir dados, este select é feito por dois parametros codigoVendedor + Data

mas não estou a conseguir deixo aqui o código para ver se podem ajudar, obrigado

Private Function SalvarItens()

'Connection string

Const constr As String = "Data Source=CARLOS-PC\SQLEXPRESS;Initial Catalog=TesteAnalise;Integrated Security=True"

' Construção da classe SQLConnection

Dim db As New SqlConnection(constr)

Try

'Abertura da ligação

db.Open()

'Dim Data As String

'Data = Format(Date, "dd-MM-yyyy")

'Dim query() = {"dd/MM/yyyy", "d/M/yyyy", "dd-MM-yyyy"}

'Dim query As String = "SELECT * FROM Movimentos WHERE codigoVendedor = " + DataGridView1.Rows(0).Cells("codigoVendedor").Value + " AND @Data = " + Date.ParseExact(DataGridView1.Rows(0).Cells("Data").Value, "yyyy-MM-dd", System.Globalization.DateTimeFormatInfo.InvariantInfo, Globalization.DateTimeStyles.None) + ""

'Dim cmd As New SqlCommand(query, db)

'If (cmd.ExecuteNonQuery() < 0) Then

'MessageBox.Show("Ola")

'End If

For r As Integer = 0 To DataGridView1.Rows.Count - 1

Dim varsql As String

'Instrução sql

varsql = "INSERT INTO Movimentos(codigoArtigo,quantidadeInvent,quantidadeReal,Confirmacao,codigoVendedor,Data) VALUES (@codigoArtigo,@quantidadeInvent,@quantidadeReal,@Confirmacao,@codigoVendedor,@Data)"

' Inserir dados na base de dados

'Construção da classe sqlcommand

Dim cmd1 As New SqlCommand(varsql, db)

' cmd.Parameters.Add("@Id", SqlDbType.Int).Value = DataGridView1.Rows(0).Cells("Id").Value

'cmd1.Parameters.Add("@codigoVendedor", SqlDbType.Int).Value = DataGridView1.Rows®.Cells("codigoVendedor").Value

cmd1.Parameters.Add("@codigoArtigo", SqlDbType.NVarChar).Value = DataGridView1.Rows®.Cells("codigoArtigo").Value

cmd1.Parameters.Add("@quantidadeInvent", SqlDbType.Int).Value = DataGridView1.Rows®.Cells("quantidadeInvent").Value

cmd1.Parameters.Add("@quantidadeReal", SqlDbType.Int).Value = DataGridView1.Rows®.Cells("quantidadeReal").Value

cmd1.Parameters.Add("@Confirmacao", SqlDbType.Int).Value = DataGridView1.Rows®.Cells("Confirmacao").Value

cmd1.Parameters.Add("@codigoVendedor", SqlDbType.Int).Value = DataGridView1.Rows®.Cells("codigoVendedor").Value

cmd1.Parameters.Add("@Data", SqlDbType.Date).Value = DataGridView1.Rows®.Cells("Data").Value

'Execução do comando no servidor

cmd1.ExecuteNonQuery()

' Se o resultado for menor do que um então obtemos um erro;

'If cmd1.ExecuteNonQuery() < 1 Then

'MessageBox.Show("Não foi possível actualizar o(s) registo(s)", "Actualizar", MessageBoxButtons.OK, MessageBoxIcon.Stop)

'End If

Next

'End If

Return True

' actualizados os registos;

MessageBox.Show("Registo(s) actualizado(s) com sucesso", "Registos Actualizados", MessageBoxButtons.OK, MessageBoxIcon.Information)

'Return True

Catch ex As Exception

MsgBox(ex.Message, MsgBoxStyle.Critical)

Return False

'a conexão é fechada com ou sem sucesso

Finally

'Fecho da ligação

db.Close()

End Try

End Function

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.