VB.Net/Database ADO.net/SqlCommand Create

Материал из VB Эксперт
Перейти к: навигация, поиск

A method to handle asynchronous completion using callbacks.

<source lang="vbnet"> Imports System Imports System.Data Imports System.Threading Imports System.Data.SqlClient

   Public Class MainClass
       
       Public Shared Sub CallBackHandler(ByVal result As IAsyncResult)
           Using cmd As SqlCommand = TryCast(result.AsyncState, SqlCommand)
               Using reader As SqlDataReader = cmd.EndExecuteReader(result)
                   SyncLock Console.Out
                       While reader.Read
                           Console.WriteLine("{0}   {1}   {2}   {3}", reader("ComponentID"), reader("ComponentDesc"), reader("TotalQuantity"), reader("ListPrice"))
                       End While
                   End SyncLock
               End Using
           End Using
       End Sub
       Public Shared Sub Main()
           Using con As New SqlConnection
               con.ConnectionString = "Data Source=.\sqlexpress;Database=AdventureWorks;Integrated Security=SSPI;Asynchronous Processing=true;"
               Using cmd As SqlCommand = con.CreateCommand
                   cmd.rumandType = CommandType.StoredProcedure
                   cmd.rumandText = "uspGetBillingInfo"
                   cmd.Parameters.Add("@StartProductID", SqlDbType.Int).Value = 771
                   cmd.Parameters.Add("@CheckDate", SqlDbType.DateTime).Value = DateTime.Parse("07/10/2000")
                   con.Open()
                   cmd.BeginExecuteReader(AddressOf CallBackHandler, cmd)
               End Using
               con.Close()
           End Using
       End Sub
   End Class
  
   
 </source>


Create a Database through SqlConnection

<source lang="vbnet"> Imports System Imports System.Data Imports System.Data.SqlClient public class MainClass

  Shared Sub Main()
     Dim thisConnection As New SqlConnection("server=(local)\SQLEXPRESS;" & _
         "integrated security=sspi;database=MyDatabase")
     "Create Command object
     Dim nonqueryCommand As SqlCommand = thisConnection.CreateCommand()
     Try
        " Open Connection
        thisConnection.Open()
        Console.WriteLine("Connection Opened")
        " Execute NonQuery To Create Database
        nonqueryCommand.rumandText = "CREATE DATABASE MyDb"
        Console.WriteLine("Executing {0}",nonqueryCommand.rumandText)
        Console.WriteLine("Number of rows affected : {0}",nonqueryCommand.ExecuteNonQuery())
        " Execute NonQuery To Drop Database
        nonqueryCommand.rumandText = "Drop DATABASE MyDb"
        Console.WriteLine("Executing {0}",nonqueryCommand.rumandText)
        Console.WriteLine("Number of rows affected : {0}",nonqueryCommand.ExecuteNonQuery())
     Catch ex As SqlException
        " Display error
        Console.WriteLine("Error: " & ex.ToString())
     Finally
        " Close Connection
        thisConnection.Close()
        Console.WriteLine("Connection Closed")
     End Try
  End Sub

End Class


 </source>


Execute NonQuery To Create Table and report how many rows affected

<source lang="vbnet"> Imports System Imports System.Data Imports System.Data.SqlClient public class MainClass

  Shared Sub Main()
     Dim thisConnection As New SqlConnection("server=(local)\SQLEXPRESS;" & _
         "integrated security=sspi;database=tempdb")
     "Create Command object
     Dim nonqueryCommand As SqlCommand = thisConnection.CreateCommand()
     Try
        " Open Connection
        thisConnection.Open()
        Console.WriteLine("Connection Opened")
        " Execute NonQuery To Create Table
        nonqueryCommand.rumandText = "CREATE TABLE MyTable (ID integer)"
        Console.WriteLine("Executing {0}", nonqueryCommand.rumandText)
        Console.WriteLine("Number of rows affected : {0}", nonqueryCommand.ExecuteNonQuery())
        " Execute NonQuery To Drop Table
        nonqueryCommand.rumandText = "DROP TABLE MyTable"
        Console.WriteLine("Executing {0}", nonqueryCommand.rumandText)
        Console.WriteLine("Number of rows affected : {0}", nonqueryCommand.ExecuteNonQuery())
     Catch ex As SqlException
        " Display error
        Console.WriteLine("Error: " & ex.ToString())
     Finally
        " Close Connection
        thisConnection.Close()
        Console.WriteLine("Connection Closed")
     End Try
  End Sub

End Class


 </source>