Как создать соединение с базой данных MySql, которое возвращает результаты в текстовый файл?
Я хочу написать инструкцию MySql, которая будет подключаться к базе данных, выбирать столбец из таблицы, а затем выводить эти данные в текстовый файл в определенное место на моем компьютере. Я искал в интернете в течение нескольких дней и, кажется, не нашел ответа, который я ищу. Я довольно новичок в c#, MySql и Visual Studio. Я просто пытаюсь научиться писать правильные утверждения и получать желаемый результат. Любая помощь будет очень признательна.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using MySql.Data.MySqlClient;
using MySql.Data;
using System.Windows.Forms;
using System.IO;
namespace NewPractice
{
public class Connect
{
static void Main()
{
string results = @"server=111.111.11.111; userid=anyone;
password=anypassword; database=anydatabase";
MySqlConnection conn = null;
try
{
conn = new MySqlConnection(results);
conn.Open();
//Console.WriteLine(
File.WriteAllLines(
@"C:Documents and SettingsanyoneMy DocumentsTeststestoutput.txt",
results.ToArray());
}
catch (MySqlException ex)
{
Console.WriteLine("Error: (0)", ex.ToString());
}
finally
{
if (conn != null)
{
conn.Close();
}
}
}
}
}
3 ответов:
Вы записываете в файл содержимое строки
result
, а не данные, которые пытаетесь выбрать. Вам нужно выполнить команду sql и получить объектSqlDataReader
для записи ваших данных в файл.string results = @"server=111.111.11.111; userid=anyone; password=anypassword; database=anydatabase"; MySqlConnection connection = new MySqlConnection(results); MySqlCommand command = connection.CreateCommand(); MySqlDataReader reader; command.CommandText = "select * from mycustomers"; connection.Open(); reader = command.ExecuteReader(); using(var sw = new StreamWriter("C:\MyPath\MyFile.txt")) { while (reader.Read()) { var row = (IDataRecord)reader; sw.WriteLine(row["myColumn"]); } } connection.Close();
Если база данных находится на вашем локальном компьютере, вы можете использовать ' select .. в outfile". http://dev.mysql.com/doc/refman/5.1/en/select-into.html . это будет запись в папку на сервере, так что это не очень полезно, если это другая машина, и вы не можете скопировать оттуда.
Существует множество руководств для доступа к MySQL из. NET.
Это один из них: http://zetcode.com/db/mysqlcsharptutorial/В любом языке есть несколько простых шагов для чтения из базы данных:
1. connect to the database. 2. execute a query 3. iterate through the results of the query 4. close the connection.
То, что вы делаете в своем коде, - это подключение к базе данных, а затем попытка записать информацию о подключении в файл.
Comments