Как обновить дату и время базы данных в этом формате «дд МММ гггг ЧЧ: мм: сс 'GMT'» с помощью программы Vb. net - PullRequest
0 голосов
/ 07 мая 2020

Я много искал о том, как получить время в Интернете, и нашел решение. Вы найдете его в моих кодах.

Моя цель - создать DateTime членства, Первый шаг , чтобы программа получила время из inte rnet startdate затем добавьте Время, которое является временем членства, как enddate, Второй шаг при повторном запуске программы заменит время начала на фактическое время " Получил из inte rnet тоже " и вычесть его с enddate

Вот моя структура базы данных (обратите внимание, я пытался сделайте enddate и startdate как DateTime, но это не удалось):

Database Structure

Вот моя программа:

[Program Photo]

вот мой код:

Imports System.Globalization
Imports System.Net
Imports MySql.Data.MySqlClient


Public Class Form1
    Dim date1 As DateTime
    Dim date2 As DateTime
    Dim date3 As DateTime
    Dim x As DateTime
    Public Shared Function GetNistTime() As DateTime
        Dim myHttpWebRequest = CType(WebRequest.Create("http://www.microsoft.com"), HttpWebRequest)

        Dim response = myHttpWebRequest.GetResponse()
        Dim todaysDates As String = response.Headers("date")
        Return DateTime.ParseExact(todaysDates, "ddd, dd MMM yyyy HH:mm:ss 'GMT'", CultureInfo.InvariantCulture.DateTimeFormat, DateTimeStyles.AssumeUniversal)
    End Function

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        x = GetNistTime()
        TextBox1.Text = x

        date1 = CStr(x.AddMonths(1))
        Dim MySqlConn = New MySqlConnection
        MySqlConn.ConnectionString = "server=localhost;userid=root;password=123456789;database=test"
        Dim Reader As MySqlDataReader
        Dim Query As String
        Dim sqlcommand As MySqlCommand
        Try
            MySqlConn.Open()
            Query = "UPDATE test.time SET startdate='" & x & "',enddate='" & date1 & "' WHERE username='program'"
            sqlcommand = New MySqlCommand(Query, MySqlConn)
            Reader = sqlcommand.ExecuteReader
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            MySqlConn.Dispose()
        End Try

    End Sub

    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Dim MySqlConn = New MySqlConnection
        MySqlConn.ConnectionString = "server=localhost;userid=root;password=123456789;database=test"
        Dim Reader As MySqlDataReader
        Dim Query As String
        Dim sqlcommand As MySqlCommand
        Try
            MySqlConn.Open()
            Query = "Select * from test.time  WHERE username='program'"
            sqlcommand = New MySqlCommand(Query, MySqlConn)
            Reader = sqlcommand.ExecuteReader
            While Reader.Read
                date2 = Reader.GetDateTime("startdate")
                date3 = Reader.GetDateTime("enddate")
            End While
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            MySqlConn.Dispose()
        End Try
        TextBox2.Text = date2
        TextBox3.Text = date3
    End Sub
End Class

Когда я запускаю программу и нажимаю button2 Я получил эту ошибку:

[Program Error Photo]

, затем, когда я нажимаю ОК в ex.message, это записывается в TextBox2 & TextBox3:

[Program Error Photo]

Это выходной сигнал, сохраненный в База данных:

[The Out Put in Database]

Пожалуйста, помогите мне и отредактируйте все, что хотите, в коде или здесь, если у вас есть другая идея. Дайте мне знать, извините, если Я поставил Все подробности и показался скучным, спасибо

Я знаю способ заменить «ص» или «م» на «AM» и «PM», если у вас есть способ получить Дата с "Am" и "PM" напрямую, я был бы благодарен

...