目录
公司实习需要用到vb.net,这段时间就开始学习,今天正好学习操作mysql数据,记录一下。
环境
- window10
- visual studio2022
- mysql8.0
- MySqlConnector
概述
本文主要讲述如何在开发winform过程中去访问mysql数据库。
开发过程使用了tablelayoutpanel、textbox、labal简单控件。
实现功能:用户输入账号、密码,点击登录,后台判断信息是否完全之后进行数据库访问并返回用户信息,有弹框显示。
过程
1、生成项目
详细过程就不是了,需要了解的看我上一篇文章。
我的项目结构如图所示,包括:
两个form页面分别是form1、form2
一个公共模块publicdata用来存放共享数据
一个class类user用户类
其他暂时不解释(主要还是咱不懂哈哈哈)
2、页面实现
登录页面效果如下:
实现过程十分简单全称拖拽式,再编辑一下控件属性即可
我是用了tablelayoutpanel容器控件做载体,在表格中加入两个textbox控件和四个labal控件,其中两个labal控件做了单元格合并。如下图:
为了保证tablelayoutpanel时刻保持居中需要加入以下代码:
Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.WindowState = FormWindowState.Maximized
Dim x As Integer = (Me.Width - TableLayoutPanel1.Width) / 2
Dim y As Integer = (Me.Height - TableLayoutPanel1.Height) / 2.5
TableLayoutPanel1.Location = New Point(x, y)
End Sub
3、访问数据库
Private inputAccount As String
Private inputPassword As String
//数据库信息
Dim connStr As String = "server=localhost;user=root;database=winform1;port=3306;password=123456;"
Dim conn As New MySqlConnection(connStr)
Private cmd As MySqlCommand
Private reader As MySqlDataReader
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
inputAccount = TextBox1.Text '''获取用户输入账号信息
inputPassword = TextBox2.Text '''获取用户输入密码信息
'''判断输入信息是否为空
If inputAccount = "" Or inputPassword = "" Then
MessageBox.Show("信息输入不全")
Exit Sub
End If
conn.Open()
Dim sql As String = "select * from `user` where userAccount ='" & inputAccount & "' and userPassword = '" & inputPassword & "'"
cmd = New MySqlCommand(sql, conn)
reader = cmd.ExecuteReader '''执行sql语句
If reader.Read Then '''判断返回结果是否为空,则将用户信息保存至共享数据内
PublicData.loginUser = New User(reader("userId"), reader("userAccount"), reader("userPassword"))
Dim form1 As New Form1
form1.Show()
Me.Hide()
MessageBox.Show(“欢迎” & PublicData.loginUser.getAccount & "登录系统", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
Else '''账号密码输入错误提示用户
MessageBox.Show("账号或密码错误")
End If
conn.Close()
End Sub
登录成功后效果如下:
本章到此结束!