システム日付取得 [VB]

Visual Basic ADO.NET [Community Express]

SELECT CONVERT(DATE, GETDATE())

GETDATE関数で取得した日付時刻を、CONVERT関数を使って、Date型に変換すれば、システム日付のみ取得できます。

Date型を使うと、現在のシステム日付を取得できます。

Date型は、SQL Server 2008から追加された新しいデータ型で、年月日のみを格納します。

サンプルプログラム

画面例

ADO.NETを使って、現在のシステム日付のみを取得するプログラムを作成します。フォームにラベルとボタンを貼り付けます。

このラベルに、現在のシステム日付を文字列に変換して表示します。

DateTime型のシステム日付時刻を、GETDATE関数で取得し、CONVERT関数でDate型に変換します。

SQL文は、"SELECT CONVERT(DATE, GETDATE())" とします。FROM句を記述する必要はありません。

CStr(now.ToString("yyyy年MM月dd日")) と編集すれば、2009年08月24日と表示されます。

ソースリストの枠内をクリックすると全選択できます。

Option Strict On
Imports System.Data.SqlClient

Public Class Form1

    Private Sub Button1_Click _
      (ByVal sender As System.Object, _
       ByVal e As System.EventArgs) Handles Button1.Click

      Try
          Using con As New SqlConnection
            Using cmd As New SqlCommand
              ' 接続文字列の設定(SQL Server 2008 Express Edition)
              con.ConnectionString = _
                    "Data Source=.\SQLEXPRESS;" & _
                    "Integrated Security=True;" & _
                    "Connect Timeout=30;" & _
                    "User Instance=True"
              ' SqlCommand.Connectionプロパティの設定
              cmd.Connection = con
              ' DB接続
              con.Open()
              ' SQL文の設定
              cmd.CommandText = "SELECT CONVERT(DATE, GETDATE())"
              ' システム日付をSqlCommand.ExecuteScalarで取得
              Dim now As Date = CDate(cmd.ExecuteScalar())
              ' システム日付をラベルに表示
              Me.LblNow.Text = CStr(now)
            End Using
          End Using

      Catch ex As Exception
          ' 例外が発生した時の処理
          MessageBox.Show(ex.ToString)
      End Try

  End Sub

End Class