最初にデータソース、データベース名、ユーザー名、パスワードなどの詳細を収集する 2 つのフォームがあります。2 番目の形式では、実行する SQL スクリプト ファイルと接続先のデータベース名を収集します。
私が達成したいのは、選択したデータベースで sql スクリプト ファイルを実行できるようにすることです。
2 番目の形式で使用されるコードは次のようになります。
private void comboBox1_TextChanged(object sender, EventArgs e)
{
string sel = comboBox1.SelectedItem.ToString(); //Here "sel" is the database selected
if (sel == "master")
{
comboBox2.Items.Clear();
//Selects a default file
DirectoryInfo dinfo = new DirectoryInfo(@"D:\Testpgm");
FileInfo[] Files = dinfo.GetFiles("master.sql", SearchOption.AllDirectories);
foreach (FileInfo file in Files)
{
comboBox2.Items.Add(file.Name);
}
}
else
{
comboBox2.Items.Clear();
//Selects a default file
DirectoryInfo dinfo = new DirectoryInfo(@"D:\Testpgm");
FileInfo[] Files = dinfo.GetFiles("dbscript.sql", SearchOption.AllDirectories);
foreach (FileInfo file in Files)
{
comboBox2.Items.Add(file.Name);
}
}
}
コンボボックス 2 で使用されるコードは次のとおりです。
private void comboBox2_TextChanged(object sender, EventArgs e)
{
string textsel = comboBox2.SelectedItem.ToString(); //textsel is used to select the sql file selected
if (textsel == "master.sql")
{
richTextBox1.Clear();
//Read the selected sql file and display it in richtextbox
System.IO.StreamReader myFile = new System.IO.StreamReader(@"D:\Testpgm\master.sql");
string textentry = myFile.ReadToEnd();
richTextBox1.AppendText(textentry);
}
else
{
richTextBox1.Clear();
//Read the selected sql file and display it in richtextbox
System.IO.StreamReader myFile = new System.IO.StreamReader(@"D:\Testpgm\dbscript.sql");
string textentry = myFile.ReadToEnd();
richTextBox1.AppendText(textentry);
}
}
次に、コンボボックス 1 で選択したデータベースに接続し、コンボボックス 2 で選択した sql ファイルに含まれる sql スクリプトをボタンをクリックして実行します。
これは可能ですか?どうすればこれを達成できますか?
どんなコメントも本当に役に立ち、感謝しています..