2017年5月15日月曜日

UVライトを買う時のポイント

種類が多すぎる

沢山有り過ぎて、目移りします

比較して使い易かった経験をもとに紹介します

絶対に欲しい機能はターマーです
スイッチを入れて、後は勝手にタイマーで電源OFF、これは必須です
勿論、タイマー機能もあるけど永久ON機能も必要です

後は、開口部が広いこと、ネイルの手や足にも使用できます 30W以上は欲しいですね
勿論、安価であること

そんな中で、たどり着いた商品を紹介します

UVライト YDJ-818


開口部が広く手や足を入れてネイルの硬化ができます
タイマー機能が付いているので放置しておいても安心です
タイマー2分でだいたいのUVレジンは硬化します
勿論、タイマーを使用せず電源入れっぱなしも可能です
UVライトを囲む形状なのでUV光が漏れにくく目に優しい
硬化させたい物を入れてタイマーボタンを押すだけ、後は放置の簡単操作
価格もお手頃

2017年5月14日日曜日

VB.NET プログラムでSQL ServerのSQL文を実行

プログラムでSQL文を実行し結果を取得したり、列を更新、削除する

VB.NETのSQL Serverに接続して、SQL文を実行することでテーブルの値や列を操作する説明をします

プログラムでSQL文の実行であってもSQL文事態の文法は他と同じです

ここでは、「SQL Server」の「データベースに接続」、「SELECT」、「INSERT」、「UPDATE」、「DELETE」を紹介します

テータベースに接続

Dim cn As New SqlClient.SqlConnection

cn.ConnectionString = 接続文字列
cn.Open()

最後にクローズと解放をお忘れなく
cn.Close()
cn.Dispose()

接続文字列

SQL Serverにログインするのに必要な情報をルールに基づいて羅列した文字列です

Data Source = IPアドレス等のロケーション\SQLEXPRESS;User ID = ユーザID;Password = パスワード;Initial Catalog = カレントデータベース名;" この様な定義とします

これを変数に定義します
Dim cnStaring As String

cnString = ""
cnString &= "Data Source =IPアドレス等のロケーション\SQLEXPRESS;"
cnString &= "User ID = ユーザID;"
cnString &= "Password = パスワード;"
cnString &= "Initial Catalog = データベース名;"

テーブルの内容を取得する

戻り値が必要な場合は「ExecuteReader」を使います
Dim cn As New SqlClient.SqlConnection
Dim cd As New SqlClient.SqlCommand
Dim dr As SqlClient.SqlDataReader
Dim SQL As String

'データベース接続
cn.ConnectionString = "データベース接続文字列"
cn.Open()
'SQL文生成
SQL = ""
SQL &= "SELECT"
SQL &= "        *"
SQL &= "    FROM"
SQL &= "        テーブル名"
'SQLコマンド設定
cd.CommandText = SQL
cd.Connection = cn
dr = cd.ExecuteReader
While dr.Read
    Console.Write(dr("列名1"))
    Console.Write(dr("列名2"))
End While
'クローズ解放
dr.Close()
cd.Dispose()
cn.Close()
cn.Dispose()

行を追加する

戻り値が必要ない場合は「「ExecuteNonQuery」を使用します
Dim cn As New SqlClient.SqlConnection
Dim cd As New SqlClient.SqlCommand
Dim SQL As String

'データベース接続
cn.ConnectionString = "データベース接続文字列"
cn.Open()
'SQL文生成
SQL = ""
SQL &= "INSERT  INTO    テーブル名"
SQL &= "("
SQL &= "    列名1,"
SQL &= "    列名2,"
SQL &= "    列名3"
SQL &= ")"
SQL &= "VALUES"
SQL &= "("
SQL &= "    1,"
SQL &= "    100,"
SQL &= "   'テスト文字列'"
SQL &= ")"
'SQLコマンド設定
cd.CommandText = SQL
cd.Connection = cn
cd.ExecuteNonQuery()
'クローズ解放
cd.Dispose()
cn.Close()
cn.Dispose()

テーブルを更新する

Dim cn As New SqlClient.SqlConnection
Dim cd As New SqlClient.SqlCommand
Dim SQL As String

'データベース接続
cn.ConnectionString = "データベース接続文字列"
cn.Open()
'SQL文生成
SQL = ""
SQL &= "UPDATE  テーブル名"
SQL &= "    SET 列名2      =   200,"
SQL &= "        列名3      =   '文字列修正の値'"
SQL &= "    WHERE"
SQL &= "        列名1  =   1"
'SQLコマンド設定
cd.CommandText = SQL
cd.Connection = cn
cd.ExecuteNonQuery()
'クローズ解放
cd.Dispose()
cn.Close()
cn.Dispose()

行を削除する

Dim cn As New SqlClient.SqlConnection
Dim cd As New SqlClient.SqlCommand
Dim SQL As String

'データベース接続
cn.ConnectionString = "データベース接続文字列"
cn.Open()
'SQL文生成
SQL = ""
SQL &= "DELETE"
SQL &= "    FROM"
SQL &= "        テーブル名"
SQL &= "    WHERE"
SQL &= "        列名1  =   1"
'SQLコマンド設定
cd.CommandText = SQL
cd.Connection = cn
cd.ExecuteNonQuery()
'クローズ解放
cd.Dispose()
cn.Close()
cn.Dispose()

まとめ

戻り値が必要な場合は「ExecuteReader」
戻り値が必要ない場合は「「ExecuteNonQuery」

順番として
データベースに接続
SQL文生成
SQLコマンド実行
データベースクローズ・解放
となります

2017年5月13日土曜日

VB.NETでFormのサイズ変更、「×」ボタンを無効化する

ユーザーによるFormの操作を制限する

Formを作成しると最初はユーザーにより最大化や最小化、閉じる等の機能が有効な状態です
しかし、仕様によってはその機能が邪魔になりかねません
それらの機能を無効化します

プロパティでコントロールボックスを非表示にすることはできますが、それでは最小化ボタンまで消えてしまいますので、「最大化」、「サイズ変更」、「閉じる」を無効化します

最大化とサイズ変更無効化

 
'Window最大化ボタン無効
Me.MaximizeBox = False
'Windowのサイズ変更禁止
 Me.FormBorderStyle = FormBorderStyle.FixedSingle
「MaximizeBox」プロパティと「Me.FormBorderStyle」プロパティの操作で無効化します
Formの「Load」イベントで実行するのが現実的です

「×」閉じるボタン無効化

フォームのCreateParamsプロパティをオーバーライドして「閉じる」ボタンを無効状態にし、システムメニューの「閉じる」も表示されず、「Alt」+「F4」キーも無効にします
Protected Overrides ReadOnly Property CreateParams As CreateParams
    Get
        Dim c = MyBase.CreateParams

        c.ClassStyle = c.ClassStyle Or &H200
        Return c
    End Get
End Property
このコードをFormの「Class 」内にコーディングすれば「×」閉じるボタンを無効化できます