PostgreSQLDB to DataTable

本文介绍了一个VB.NET应用程序示例,该程序能够从PostgreSQL数据库读取数据并将其显示在DataGridView中,同时也能从指定的Excel文件中读取特定范围的数据并进行展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参照

VB中对EXCEL的各种操作

vb.net操作Excel表格类

VB.NET使用EXCEL常见操作

vb.net操作excel汇集

Imports Npgsql
Imports Microsoft.Office.Interop
Imports System.Data

Public Class MainForm
    Dim myConnection As NpgsqlConnection
    Dim myConnectionString = "Server=localhost; Port=5432; User Id=postgres; Password=1; Database=myDataBase;CommandTimeout=300"

    Private Sub MainForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load


    End Sub

    'DB読み込み
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Try
            myConnection = New NpgsqlConnection()
            myConnection.ConnectionString = myConnectionString
            myConnection.Open()
            Dim cmd As NpgsqlCommand = New NpgsqlCommand()
            cmd.CommandText = "Select * from public.""myTable"""
            cmd.Connection = myConnection
            Dim ad As NpgsqlDataAdapter = New NpgsqlDataAdapter(cmd)
            Dim dt As DataTable = New DataTable()
            ad.Fill(dt)
            Dim dr As NpgsqlDataReader = cmd.ExecuteReader()

            Me.DataGridView1.DataSource = dt

            While dr.Read
                For i = 1 To dr.FieldCount
                    Console.WriteLine("========" + dr(i - 1))
                Next
            End While
            Console.WriteLine("========" + dr.GetSchemaTable().Rows(0).Item(0))

        Catch ex As Exception
            Console.WriteLine(ex.ToString)
        Finally
            myConnection.Close()
        End Try

    End Sub

    'EXCEL読み込み
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        Dim ex As New Excel.Application
        Dim wb As Excel.Workbook
        Dim ws As Excel.Worksheet
        Dim ra As Excel.Range
        Dim a(,) As Object = Nothing
        wb = ex.Workbooks.Open("C:\DataImportTool\Data\Data.xlsx")
        ws = wb.Worksheets("001")
        ra = ws.Range(ws.Cells(3, 2), ws.Cells(4, 3))

        Dim dt As DataTable = New DataTable()
        If IsArray(ra.Value) Then
            a = ra.Value
        End If
        dt.Columns.Add(a(1, 1))
        dt.Columns.Add(a(1, 2))
        Dim row As DataRow = dt.NewRow()
        row(0) = a(2, 1)
        row(1) = a(2, 2)
        dt.Rows.Add(row)
        Me.DataGridView1.DataSource = dt

        Console.WriteLine(a(1, 1))
        wb.Close()
        ex.Quit()


    End Sub

    '登録
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

    End Sub
End Class

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值