¿Como enlazar Sql server con Visual Basic.net 2008?

Iniciado por 9Sergio, 14 Noviembre 2011, 20:25 PM

0 Miembros y 1 Visitante están viendo este tema.

9Sergio

Hola a todos,

Acabo de empezar a ver SQL Server (llevo como 5 clases), Ya se usar los códigos básicos, Create, Insert, Delete etc... Lo sencillo. (Todavía no domino ni las llaves, ni el Tigger)

Pero necesito poder enlazarlo con un programa en visualbasic.net (utilizo el 2008), para que este guarde un registro de lo que haga el usuario que lo ejecute.

Lo que quiero es poder modificar la base de datos desde visual, eh buscado durante un rato (como 3 días), sé que la respuesta está por ahí.

¿Podrían Facilitarme algún método para realizar esto?

Tenía pensado, que se podría de 2 formas

1) En Visual Ingresar algún evento o código en el cual ingresar códigos de SQL Server o similares que pudieran hacer lo mismo.

2) Activar algún código (tal vez algún Tigger), desde visual basic.net.

seba123neo

en el titulo dice my sql y lo haces con sql server ?

Cita de: 9Sergio en 14 Noviembre 2011, 20:25 PM

Lo que quiero es poder modificar la base de datos desde visual, eh buscado durante un rato (como 3 días), sé que la respuesta está por ahí.


modificar en que sentido ? los registros las tablas ?
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson

BlackZeroX

 Usa ADO.NET

los tiggers se activar igual con la misma libreria no recuerdo con que instruccion... creo que era algo con patters (No hagas mucho caso ando fumado xP).

Dulces Lunas!¡.
The Dark Shadow is my passion.

9Sergio

Perdona seba123neo no sabia que habia tanta diferencia entre my sql y sql server, ya arregle el titulo, perdona soy muy nuevo.

y si me referia a cambiar el contenido de las tablas, claro que me gustaria cambiar la tabla en si, pero eso lo investigare aparte, Saben donde puedo encontrar tutoriales o de algun codigo que sirva para lograr cambiar el contenido de las tablas?

_-Javier-_

#4
Oe men
si quieres conectar Sql Server con Visual Net usa una cadena de conexion para asi
poder modificar el contenido o registros de las tablas.


Codigo de conexion:

--Cabecera
import system.data
import system.data.sqlclient

------

public con as new sqlconnection("Server=.;DataBase=NombreBD;Integrated Security=true");

'el . en la cadena de conexion corresponde a tu servidor con el q entras a SQL
'metodos para abrir conexion

sub abrir
if con.state=0 then
con.open()
end sub

sub cerrar
if con.state=1 then
con.close()
end dub



--ya esta  ahora esos metodos de abrir y cerrar se usan cuando quieres modificar
--las tablas de tu BD ya sea registrando , eliminado,Modificando , etc

AKI UN EJEMPLO UTILIZANDO UNA BD : ejercicio


Código (sql) [Seleccionar]

go
use master
go
if(DB_ID('ejercicio')is not null)
drop database ejercicio
go
create database ejercicio
go
use ejercicio
go
create table producto (
idp char(3)primary key,
nombre varchar(30)not null,
procedencia varchar(20)not null check (procedencia in('Nacional','Importado')),
precio money,
presentacion varchar(15)not null check(presentacion in('Caja','Lata','Bolsa')),
stock int not null check(stock >0),
fvencimiento date)
go
create proc registrar(
@idp char(3),
@nombre varchar(30),
@proc varchar(20),
@precio money,
@presen varchar(15),
@stock int,
@fv date,
@msj varchar(60)output)
as begin
if(exists(select * from producto where idp =@idp ))
set @msj ='el id '+','+@idp +'Producto ya existe'
   else begin
   insert producto values(@idp ,@nombre ,@proc ,@precio ,@presen ,@stock ,@fv )
     set @msj ='DATOS REGISTRADOS'
   end
end




--ahora el code en visual

Código (vbnet) [Seleccionar]


Imports System.Data
Imports System.Data.SqlClient
Public Class Form1
    Public con As New SqlConnection("Server=.;DataBase=ejercicio;Integrated Security=true")

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        cbxpresentacion.Items.Add("Seleccione") : cbxpresentacion.Items.Add("Caja")
        cbxpresentacion.Items.Add("Lata") : cbxpresentacion.Items.Add("Bolsa")
        rbtnacional.Checked = True
        cbxpresentacion.SelectedIndex = 0
        'para validar meses
        vermes()

    End Sub
    Sub abrir()
        If con.State = 0 Then con.Open()
    End Sub
    Sub cerrar()
        If con.State = 1 Then con.Close()
    End Sub
    Private Sub btnregistrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnregistrar.Click
        If txtcodigo.Text <> "" And txtnombre.Text <> "" And txtprecio.Text <> "" And txtstock.Text <> "" Then
            If cbxpresentacion.SelectedIndex <> 0 Then
                Try
                    Dim cmd As New SqlCommand
                    Dim msje As String = ""
                    abrir()
                    cmd = New SqlCommand("registrar", con)
                    cmd.CommandType = 4
                    With cmd.Parameters
                        .AddWithValue("@idp", txtcodigo.Text)
                        .AddWithValue("@nombre", txtnombre.Text)
                        If rbtnacional.Checked = True Then
                            .AddWithValue("@proc", "Nacional")
                        Else
                            .AddWithValue("@proc", "Importado")
                        End If
                        .AddWithValue("@precio", txtprecio.Text)
                        .AddWithValue("@presen", cbxpresentacion.Text)
                        .AddWithValue("@stock", txtstock.Text)
                        .AddWithValue("@fv", datefv.Value)
                        .Add("@msj", SqlDbType.VarChar, 60).Direction = 2
                        cmd.ExecuteNonQuery()
                        msje = cmd.Parameters("@msj").Value
                        MessageBox.Show(msje)
                        limpiar()
                    End With
                Catch ex As Exception
                End Try
                cerrar()
            Else
                MessageBox.Show("Seleccione Un Indice del Combo")
            End If
        Else
            MessageBox.Show("Llene Cajas")
        End If
    End Sub
    Sub limpiar()
        txtcodigo.Clear() : txtnombre.Clear() : txtprecio.Clear()
        txtstock.Clear()
        rbtnacional.Checked = True
        cbxpresentacion.SelectedIndex = 0
    End Sub
    Sub vermes()
        ',con esto al momento de escoger el valor del datetimepicker
        'el mes se suma 2
        Dim mes As Integer = Now.Month
        datefv.MinDate = New DateTime(Now.Year, mes + 2, Now.Day)
    End Sub
    Private Sub datefv_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles datefv.ValueChanged 
        vermes()
    End Sub
End Class




AKI IMAGEN DE FORMULARIO

http://img706.imageshack.us/img706/1684/89998267.jpg


-- dame un me gusta

http://www.facebook.com/pages/Programadores/217326488292716




Uploaded with ImageShack.us

9Sergio

:O no me acordaba de eso, si alguien por casualidad entra y tiene problemas ise un tutorial de eso hace tiempo XD.

[youtube=640,360]http://www.youtube.com/watch?v=cUGuooLKCho[/youtube]

todavía era muy nuevo y me equivocaba bastante XD