VB.NET版机房收费系统—DataGridView应用

事实上,先前刚刚開始敲机房的时候,刚用到DataGridView的时候,总显得力不从心,先要一下子就学会,看了非常多的资料,但是依照写的时候,自己有不知道从什么地方下手,于是,当自己用查询SQL语句,并用DataGridView显示出来,这个功能不能实现,但这里给大家写一下,假设有什么地方不好的会,请大家指出:

第一版:

窗口设计:

VB.NET版机房收费系统—DataGridView应用

须要的控件:

DateTimePicker、DataSet、DataGridView

把握的三步骤:

第一步:使用视图,创建出你要的产寻结果的视图(假设是一个表就能够解决的,就能够仅仅用一个查询即可了)。

第二步:查询视图返回DataTable

第三步:直接让GridView的DataSource等于DataTable中的数据即可了。

详细实现方法:

Imports System.Data.SqlClient
Imports System.Windows.Forms
Public Class FrmOperGetCharge Private Sub btnqurry_Click(ByVal sender As Object, e As EventArgs) Handles btnqurry.Click
Dim Start_DateTime As String '定义为string是由于SQL表中的该字段是string类型
Dim End_dateTime As String
Start_DateTime = Convert.ToString(DateTimePicker1.Value + " 00:00:00") '设置的为字符串类型也能够直接进行比較,加上后面的00:00:00是由于数据库中的数据时有时间的
End_dateTime = Convert.ToString(DateTimePicker2.Value) '接收来自DateTimePicker的数据 Dim strConnection As String = "Server=mx; Database=ReconsitutionCharge_sys; User ID=sa; Password=123456"
Dim sqlConnection1 As New SqlConnection(strConnection) Dim dataAdapter As New SqlDataAdapter
Dim dst As New DataSet '存储在DataSet中
Dim dt As New DataTable '接收查询结果 sqlConnection1.Open() Dim sql As String = "select * from T_Recharge_DAL Where @Start_dateTime <= DateTime AND DateTime <= @End_dateTime"
Dim cmd As SqlCommand = New SqlCommand(sql, sqlConnection1)
cmd.Parameters.Add(New SqlParameter("@Start_dateTime",Start_DateTime)) '赋值,传參
cmd.Parameters.Add(New SqlParameter("@End_dateTime", End_dateTime)) '赋值,传參 dataAdapter.SelectCommand = cmd
dataAdapter.Fill(dst, "Recharge") '将DataAdapter中的数据传到DataSet中
dt = dst.Tables("Recharge") '把DataSet中的数据返回给DataTable
sqlConnection1.Close() DataGridView1.AutoGenerateColumns = True '自己主动创建列
DataGridView1.DataSource = dt '数据源
End Sub
End Class

事实上这个应该也能够用三层来实现。

上一篇:$Django 多对多-自定义第三张表 基于双下划线的跨表查询(补充)


下一篇:Delphi启动数据库连接属性对话框