Visual Basic¶
Connect to CrateDB from Visual Basic .NET applications.
About
Npgsql is an open-source ADO.NET Data Provider for PostgreSQL, for programs written in C#, F#, or Visual Basic.
Synopsis
example.vbproj
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net$(NETCoreAppMaximumVersion)</TargetFramework>
<GenerateProgramFile>false</GenerateProgramFile>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Npgsql" Version="10.0.0-rc.1" />
</ItemGroup>
</Project>
example.vb
Imports Npgsql
Imports System
Module Example
Public Sub Main(args As String())
Dim cs As String
Dim cn As NpgsqlConnection
Dim dr As NpgsqlDataReader
'Connect to database.
cs = "Host=localhost;Port=5432;Username=crate;Password=crate;Sslmode=disable"
cn = New NpgsqlConnection(cs)
cn.Open()
'Invoke basic query.
Dim sSQL = "SELECT mountain, height FROM sys.summits ORDER BY height DESC LIMIT 3"
Dim cmd As New NpgsqlCommand(sSQL, cn)
'Display results.
dr = cmd.ExecuteReader()
Do While dr.Read()
Console.WriteLine(dr.GetString(0) & ": " & dr.GetInt32(1))
Loop
'Clean up.
dr.Close()
cn.Close()
End Sub
End Module
Start CrateDB using Docker or Podman, then invoke the example program.
docker run --rm --publish=5432:5432 docker.io/crate '-Cdiscovery.type=single-node'
export DOTNET_CLI_TELEMETRY_OPTOUT=true
dotnet run
SSL connection
Use the Sslmode=require parameter, and replace username, password,
and hostname with values matching your environment.
Also use this variant to connect to CrateDB Cloud.
cs = "Host=testcluster.cratedb.net;Port=5432;Username=admin;Password=password;Sslmode=require"