ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文

  メンテナンス 前画面に戻る

対象スレッド 件名: Oracle : 【VB.NET】Oracle のユーザーのパスワードを変更するアプリケーション
名前: lightbox
処理選択
パスワード

件名 Oracle : 【VB.NET】Oracle のユーザーのパスワードを変更するアプリケーション
名前 lightbox
コメント
@C:RED(※このアプリケーションを実行するユーザは、ORA_DBA グループ に所属している必要があります
※ sqlplus.exe にパスが通っている必要があります
)

@DIV
Imports System.IO

Public Class Form1

	Private Sub Form1_Load(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles MyBase.Load

		Me.パスワード.PasswordChar = "*"

	End Sub

	Private Sub 実行_Click(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles 実行.Click

		@C:GREEN(' プログラムと同じ場所にコマンドファイルを作成)
		Dim commandFile As String = Application.StartupPath + "\command.sql"
		Dim commandWriter As StreamWriter = _
		 New StreamWriter(commandFile, False, System.Text.Encoding.GetEncoding("shift_jis"))

		Dim commandString As String = ""
		commandString += "ALTER USER " + Me.ユーザー.Text + " SYSTEM account unlock;"
		commandString += ControlChars.CrLf
		commandString += "ALTER USER " + Me.ユーザー.Text + " IDENTIFIED BY "
		commandString += Me.パスワード.Text + ";"
		commandString += ControlChars.CrLf
		commandString += "EXIT"
		commandString += ControlChars.CrLf

		commandWriter.Write(commandString)
		commandWriter.Flush()
		commandWriter.Close()

		Dim processInfo As ProcessStartInfo = New ProcessStartInfo()
		processInfo.FileName = "sqlplus.exe"
		@C:GREEN(' コマンドプロンプトを表示しない)
		processInfo.WindowStyle = ProcessWindowStyle.Hidden
		processInfo.Arguments = "/ as sysdba @" + commandFile
		Process.Start(processInfo)

		MessageBox.Show("処理が終了しました")

	End Sub
End Class
@END