Yshopnoosa.com

Hur man skapar en lagrad procedur för att hämta Data i VB 2008

Hur man skapar en lagrad procedur för att hämta Data i VB 2008

Skapa en SQL-Server kan lagrad procedur med hjälp av Microsoft Visual Basic.NET göra programmet mer dynamisk. VB.NET är en dator programmeringsspråk som används för att skapa Windows-program. Lagrade procedurer i SQL Server accepterar indataparametrar och kan användas för att returnera data genom att ringa förfarandet. Du kan enkelt skapa en tabell, lägga till data i tabellen, skapa en lagrad procedur och använda den för att hämta data med hjälp av VB.NET.

Instruktioner

1 Starta Microsoft Visual Basic Express, klicka på "Nya projekt..." på den vänstra delen av skärmen och välj sedan "Windows Forms-program." Klicka på "OK".

2 Dubbelklicka på "Knappen" i "Verktygslådan" att lägga till en ny knapp. Dubbelklicka på "DataGridView" att lägga till en ny kontroll. Dubbelklicka på "Knapp1" att öppna modulen "Form1.vb".

3 Kopia och pasta den följande lina av koden på toppen av modulen:

Import System.Data.SqlClient

4 Kopiera och klistra in följande kod under "Button1_click" att göra en anslutning till server-databasen och skapa en ny tabell:

Dim sql As String

ConnectionString = "Data Source=<server name>;Initial Catalog=<database name>;User ID=<user name>;Password=<password>"

conn = New SqlConnection(ConnectionString)

conn.Open()

sql = "CREATE TABLE myTable" + "(myId INTEGER CONSTRAINT PKeyMyId PRIMARY KEY," + "myName CHAR(50), myAddress CHAR(255), myBalance FLOAT)"

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

Redigera följande kod och skriv namnet på din server, databas och inloggningsuppgifter:

ConnectionString = "Data Source = < servernamn >; Initial Catalog = < databasnamn >; Användar-ID = < användarnamn >; Lösenord = < lösenord > "

5 Kopiera och klistra in följande kod under koden på föregående steg att lägga till värden i tabellen du skapade:

' Adding records the table

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (1, 'John Smith', 'Los Angeles', 25.14 ) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (2, 'Jose Lopez', 'Dallas, TX', 425.25) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (3, 'Oscar Gonzalez', 'Fort Worth, TX', 14.25) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()

sql = "INSERT INTO myTable(myId, myName, myAddress, myBalance) " + "VALUES (4, 'Ana Ramos', 'New York, NY', 14.63) "

cmd = New SqlCommand(sql, conn)

cmd.ExecuteNonQuery()6

Kopiera och klistra in följande kod för att skapa en ny lagrad procedur använder du för att hämta data:

"skapa lagrad procedur

sql = "CREATE PROCEDURE myProc AS" + " SELECT myName, myAddress FROM myTable GO"

ExecuteSQLStmt(sql)

conn.Close()7

Kopiera och klistra in följande kod för att hämta data från tabellen du skapade:

'retreive data

conn = New SqlConnection(ConnectionString)

conn.Open()

Dim da As New SqlDataAdapter("myProc", conn)

Dim ds As New DataSet("SP")

da.Fill(ds, "SP")

DataGridView1.DataSource = ds.Tables(0)

conn.Close()8

Kopiera och klistra in följande kod för att skapa ett nytt förfarande för att skicka ett SQL-kommando:

Private Sub ExecuteSQLStmt(ByVal sql As String)

If conn.State = ConnectionState.Open Then

conn.Close()

End If

ConnectionString = "Data Source=&lt;server name>;Initial Catalog=&lt;database name>;User ID=&lt;user name>;Password=&lt;password>"

conn.ConnectionString = ConnectionString

conn.Open()

cmd = New SqlCommand(sql, conn)

Try

cmd.ExecuteNonQuery()

Catch ae As SqlException

MessageBox.Show(ae.Message.ToString())

End Try

End Sub

Redigera följande kod och skriv namnet på din server, databas och autentiseringsuppgifter:

ConnectionString = "Data Source = < servernamn >; Initial Catalog = < databasnamn >; Användar-ID = < användarnamn >; Lösenord = < lösenord > "

9 Tryck på "F5" du köra klicka sedan på "Knapp1" att visa data genom Data rutnätsvy kontroll.