Я хотел бы сохранить определенный текст в моей базе данных. Вместо записей, содержащих текст name=joe
, он должен просто читать joe
.Я хочу вставить данные без нескольких слов из текстового файла
это мой текстовый файл слова, как этот
name=joe|surname=clark|phone=23132131|address=jdsakldjakldja|date=11.02.2015 14:30:45
name=betty|surname=ugly|phone=32112121|address=dsadaewqeqrsa|date=11.02.2015 14:30:45
Это мои коды
string connStr = @"Data Source=ANLZ\SQLEXPRESS;Initial Catalog=testdb; Trusted_Connection=True;";
string createQuery = "INSERT INTO tbl_test(name,surname,phone,address,date) VALUES(@name,@surname,@phone,@address,@date)";
SqlConnection conn;
SqlCommand cmd;
string[] importfiles = Directory.GetFiles(@"C:\Users\An\Desktop\", "test.txt");
using (conn)
{
using (cmd = new SqlCommand(createQuery, conn))
{
cmd.Parameters.Add("@name", SqlDbType.NVarChar, 50);
cmd.Parameters.Add("@surname", SqlDbType.NVarChar, 50);
cmd.Parameters.Add("@phone", SqlDbType.NVarChar, 50);
cmd.Parameters.Add("@address", SqlDbType.NVarChar, 200);
cmd.Parameters.Add("@date", SqlDbType.DateTime);
foreach (string importfile in importfiles)
{
string[] allLines = File.ReadAllLines(importfile);
baglanti.Open();
for (int index = 0; index < allLines.Length; index++)
{
string[] items = allLines[index].Split(new char[] { '|' });
//new char[] {'|'}
cmd.Parameters["@name"].Value = items[0];
cmd.Parameters["@surname"].Value = items[1];
cmd.Parameters["@phone"].Value = items[2];
cmd.Parameters["@address"].Value = items[3];
cmd.Parameters["@date"].Value = items[4];
cmd.ExecuteNonQuery();
}
conn.Close();
}
}
}
Я не хочу, чтобы вставить как, что "имя = Джо". Как я могу сохранить без слов «name =»?
Вы можете использовать '.split (новый [] { '='}) [1];' Но это зло. – Stefan
Я не могу написать строку [] items = allLines [index] .Split ('=') [1]; он дает ошибку – anilleuss