我尝试为我的公司创建messeneger,我们有DNS(每台PC都有静态IP和PC名称)。所有工作都是通过insert,select(mysql)。我想发送组消息,我选择PC的名称和IP地址
这是计算机信息的代码
{
IPHostEntry he;
string myip = "";
he = Dns.GetHostEntry(Dns.GetHostName());
foreach (IPAddress ip in he.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
myip = ip.ToString();
}
}
label1.Text = myip;
}
string pc = System.Environment.MachineName;
这里我想选择计算机组(skupina)并插入消息(nrp)
using (MySqlConnection cnn = new MySqlConnection("Server=10.7.18.35;Database=OitDB;Uid=martin;Pwd=;"))
{
MySqlDataAdapter da = new MySqlDataAdapter("SELECT namepc FROM skupina where nazovskup= 'mojask' ", cnn);
DataSet ds = new DataSet();
da.Fill(ds, "skupina");
List<string> skName = new List<string>();
foreach (DataRow row in ds.Tables["skupina"].Rows)
{
skName.Add(row["namepc"].ToString());
string constring = "Server=10.7.18.35;Database=OitDB;Uid=martin;Pwd=;";
var Query = "INSERT INTO OitDB.skup(uzivatel)VALUES(@name)";
MySqlConnection conDatabase = new MySqlConnection(constring);
MySqlCommand cmdDatabase = new MySqlCommand(Query, conDatabase);
cmdDatabase.Parameters.Add("@name", MySqlDbType.VarChar).Value = string.Join("",skName.ToArray());
MySqlDataReader myReader;
try
{
conDatabase.Open();
myReader = cmdDatabase.ExecuteReader();
MessageBox.Show("Správa odoslaná!");
while (myReader.Read())
{
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
}
}
但现在我的结果是mysql:
row1-message1-pc1
row2-message1-pc1,pc2
row3-message1-pc1,pc2,pc3
and I want to:
row1-message1-pc1
row2-message1-pc2
row3-message1-pc3
你有什么想法吗?
答案 0 :(得分:0)
这是功能代码
using (MySqlConnection cnn = new MySqlConnection("Server=;Database=OitDB;Uid=martin;Pwd=;"))
{
MySqlDataAdapter da = new MySqlDataAdapter("SELECT namepc FROM skupina where nazovskup= 'mojask' ", cnn);
DataSet ds = new DataSet();
da.Fill(ds, "skupina");
List<string> skName = new List<string>();
foreach (DataRow row in ds.Tables["skupina"].Rows)
{
skName.Add(row["namepc"].ToString());
string constring = "Server=;Database=OitDB;Uid=martin;Pwd=;";
var Query = "INSERT INTO OitDB.nrp(id,pc,ip,komu,datum,predmet,sprava,skupina)VALUES(@id,@pc,@ip,@komu,@cas,@predmet,@sprava,@name)";
MySqlConnection conDatabase = new MySqlConnection(constring);
MySqlCommand cmdDatabase = new MySqlCommand(Query, conDatabase);
cmdDatabase.Parameters.AddWithValue("@id", idtxt.Text);
cmdDatabase.Parameters.AddWithValue("@pc", pc);
cmdDatabase.Parameters.AddWithValue("@ip", label1.Text);
cmdDatabase.Parameters.AddWithValue("@komu", comboBox1.Text);
cmdDatabase.Parameters.AddWithValue("@cas", cas);
cmdDatabase.Parameters.AddWithValue("@predmet", textBox1.Text);
cmdDatabase.Parameters.AddWithValue("@sprava", pisat.Text);
cmdDatabase.Parameters.Add("@name", MySqlDbType.VarChar).Value = row["namepc"];
MySqlDataReader myReader;
try
{
conDatabase.Open();
myReader = cmdDatabase.ExecuteReader();
MessageBox.Show("Správa odoslaná!");
while (myReader.Read())
{
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}