Código de consulta na base SQL no VB
22/02/2019
0
select
Olá amigos, estou precisando de um modelo de código que consulte se existe algo gravado na coluna de uma determinada tabela do meu BC, Alguém tem algum exemplo ? linguagem Vb.net !
Wictor
Posts
22/02/2019
Renato Dias
Dim consulta As SqlCommand = New SqlCommand("SELECT COUNT(*)
FROM PRODUTOS
WHERE NOME IS NOT NULL
AND APLICACAO IS NOT NULL", conexao)
Dim leitor2 As SqlDataReader = consulta.ExecuteReader()
Do While leitor2.Read
Console.WriteLine("Registros encontrados: " + leitor2.Item(0).ToString())
Loop
leitor2.Close()
22/02/2019
Wictor
Dim consulta As SqlCommand = New SqlCommand("SELECT COUNT(*)
FROM PRODUTOS
WHERE NOME IS NOT NULL
AND APLICACAO IS NOT NULL", conexao)
Dim leitor2 As SqlDataReader = consulta.ExecuteReader()
Do While leitor2.Read
Console.WriteLine("Registros encontrados: " + leitor2.Item(0).ToString())
Loop
leitor2.Close()
Amigo não rodou não .. Vou explicar detalhadamente oque estou fazendo: Estou importando dados de um Banco Firebird para meu banco SQL. Ja tenho todo o codigo de acesso ao banco, segue :
Imports System.Data.SqlClient Imports FirebirdSql.Data.FirebirdClient Public Class Form1 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click Dim connstr As String connstr = "User = SYSDBA; Password=masterkey; Database=C:\\SGBR\\Master\\BASESGMASTER.FDB; DataSource=localhost; Port = 3050; Dialect=3; Charset=NONE; Role=;Connection lifetime=15; Pooling=True; MinPoolSize = 0; MaxPoolSize=50; Packet Size=8192; ServerType=0;" Dim conF As FbConnection = New FbConnection(connstr) conF.Open() Dim command As FbCommand = New FbCommand("select CONTROLE, PRODUTO, CODBARRAS, UNIDADE, PRECOCUSTO, PERCLUCRO, PRECOVENDA, FORNECEDOR, QTDEMINIMA, QTDE, REFERENCIA from TESTOQUE", conF) Dim reader As FbDataReader = command.ExecuteReader() While reader.Read() ListBox1.Items.Add(String.Format("CONTROLE: - PRODUTO - - PREÇO CUSTO: R$", reader.GetString(0), reader.GetString(1), reader.GetString(4))) reader.NextResult() End While End Sub End Class
O próximo passo é verificar em meu banco se existe ou não alguma coisa gravado no campo da tabela "Produtos", se já existir alguma coisa eu farei um "update", se não existir nada eu farei um "insert" . Já tenho em meu projeto o arquivo de conexão com meu banco Sql=
Imports System.Data.SqlClient Module Conexao Public con As New SqlConnection("Server=DESKTOP-HSNO430; DataBase=bancoLW; Integrated Security=SSPI") Sub abrir() If con.State = 0 Then con.Open() End If End Sub Sub fechar() If con.State = 1 Then con.Close() End If End Sub Public usuarioNome As String End Module
agora a dúvida é como fazer essa checagem e as decisões. Pode parecer uma duvida simples mas estou iniciando na programação, desde ja agradeço as ajudas !
22/02/2019
Renato Dias
22/02/2019
Wictor
Renato do SQL eu tenho pois fui eu que fiz, segue:
use bancoLW create table produtos( Id_produto int PRIMARY KEY NOT NULL identity, Id_fiscal varchar(10), Nome varchar(60), Barras varchar(48), Aplicacao varchar(80), Localizacao varchar (6), NOriginal varchar(15) not null, NFabrica varchar (15), Grupo varchar (30), SubGrupo varchar(30), Unidade varchar (3), Quantidade varchar(7), Minimo varchar(7), Custo varchar (7), Venda varchar(7), Margem varchar(7), Suplente1 varchar (25), Suplente2 varchar (25), Suplente3 varchar (25), Suplente4 varchar (25), Suplente5 varchar (25), Suplente6 varchar (25), Fornecedor varchar (60), Adicional varchar(200) ) GO --! Procedimentos produtos use bancoLW create procedure sp_salvarproduto @Id_fiscal varchar(10), @Nome varchar(60), @Barras varchar(48), @Aplicacao VARCHAR(80), @Localizacao VARCHAR(6), @NOriginal VARCHAR(15), @NFabrica VARCHAR(15), @Grupo VARCHAR(30), @SubGrupo VARCHAR(30), @Unidade VARCHAR(3), @Quantidade VARCHAR(7), @Minimo varchar(7), @Custo varchar(7), @Venda varchar(7), @Margem varchar(7), @Suplente1 varchar(25), @Suplente2 varchar(25), @Suplente3 varchar(25), @Suplente4 varchar(25), @Suplente5 varchar(25), @Suplente6 varchar(25), @Fornecedor varchar (60), @Adicional varchar(200), @mensagem varchar (100) output as begin IF (EXISTS(SELECT * FROM produtos WHERE NOriginal=@NOriginal )) SET @mensagem =''Número Original:''+@NOriginal+''já está registrado'' else begin insert into produtos values (@Id_fiscal, @Nome, @Barras, @Aplicacao, @Localizacao, @NOriginal, @NFabrica, @Grupo, @SubGrupo, @Unidade,@Quantidade, @Minimo,@Custo, @Venda,@Margem,@Suplente1, @Suplente2,@Suplente3,@Suplente4,@Suplente5,@Suplente6,@Fornecedor, @Adicional ) set @mensagem =''Produto registrado com sucesso !'' end end go create procedure sp_editarproduto @Id_fiscal varchar(10), @Nome varchar(60), @Barras varchar(48), @Aplicacao VARCHAR(80), @Localizacao VARCHAR(6), @NOriginal VARCHAR(15), @NFabrica VARCHAR(15), @Grupo VARCHAR(30), @SubGrupo VARCHAR(30), @Unidade VARCHAR(3), @Quantidade VARCHAR(7), @Minimo VARCHAR(7), @Custo VARCHAR(7), @Venda VARCHAR(7), @Margem VARCHAR(7), @Suplente1 varchar(25), @Suplente2 varchar(25), @Suplente3 varchar(25), @Suplente4 varchar(25), @Suplente5 varchar(25), @Suplente6 varchar(25), @Fornecedor varchar (60), @Adicional varchar(200), @mensagem varchar (100) output as begin update produtos set id_fiscal = @Id_fiscal, Nome = @Nome, Barras = @Barras, Aplicacao = @Aplicacao, Localizacao = @Localizacao, NOriginal = @NOriginal, NFabrica = @NFabrica, Grupo = @Grupo, Subgrupo = @SubGrupo, Unidade = @Unidade, Quantidade = @Quantidade, Minimo = @Minimo, Custo = @Custo, Venda = @Venda, Margem = @Margem, Suplente1 = @Suplente1, Suplente2 = @Suplente2, Suplente3 = @Suplente3, Suplente4 = @Suplente4, Suplente5 = @Suplente5, Suplente6 = @Suplente6, Fornecedor = @Fornecedor, Adicional = @Adicional where NOriginal = @NOriginal set @mensagem =''Dados alterados!'' end go create proc sp_buscarProdutosNome @nome VARCHAR(60) as begin select * from produtos where nome like ''%''+ @nome + ''%'' end go create proc sp_buscarProdutosAplicacao @Aplicacao VARCHAR(80) as begin select * from produtos where Aplicacao like ''%'' + @Aplicacao + ''%'' end go create proc sp_buscarProdutosBarras @barras VARCHAR(48) as begin select * from produtos where Barras like ''%''+ @barras + ''%'' end go create proc sp_buscarAplic @barras VARCHAR(48), @Nome varchar(60), @NOriginal VARCHAR(15), @NFabrica VARCHAR(15), @Aplicacao VARCHAR(80) as begin select * from produtos where Barras like @barras + ''%'', Nome like''%''+ @nome + ''%'', NOriginal like''%''+ @NOriginal + ''%'', NFabrica like''%''+ @NFabrica + ''%'', Aplicacao like''%''+ @Aplicacao + ''%'' end go create proc sp_buscarProdutosNOriginal @NOriginal VARCHAR(15) as begin select * from produtos where NOriginal like ''%''+ @NOriginal + ''%'' end go create proc sp_buscarProdutosNFabrica @NFabrica VARCHAR(15) as begin select * from produtos where NFabrica like ''%''+ @NFabrica + ''%'' end go create proc sp_excluirProdutos @NOriginal VARCHAR(14), @mensagem VARCHAR(100) OUTPUT as BEGIN DELETE produtos WHERE NOriginal = @NOriginal SET @mensagem =''Dados excluidos ! '' end go
Já as do BC Firebird eu não tenho pois o bc não é meu .. porem tenho a senha e os campos que desejo copiar (ta no codigo que mandei do Vb)
26/02/2019
Renato Dias
https://github.com/renatodiasmvp/consoleConverteBaseFirebird
Clique aqui para fazer login e interagir na Comunidade :)