Select از SQL Server و Insert در MySql
سلام و خسته نباشید دوستان عزیز من می خواستم ببینم چجوری می تونم یک سری دیتاها را از SQL Server بخونم(که این قسمت رو مشکلی ندارم) و اون دیتاهارو توی Mysql خودم که با WampServer نصب شده اینسرت کنم(اتصال و اینسرت در MySql مشکل من هست) البته مشخص هست که این کارو با سی شارپ می خوام انجام بدم مرسی از راهنماییتون پیشاپیش
نقل قول: Select از SQL Server و Insert در MySql
ابتدا دات نت اسمبلی MySqlConnector.Net رو دانلود و Add کنین ،
حال اگر به فرض فایل DAL مون کلاسی به شکل زیر داشته باشیم :
public class Dal
{
private SqlConnection conn = new SqlConnection("Server=removed,1430;Database=remove d;User ID=removed;Password=removed;Trusted_Connection=Fal se;");
private SqlCommand cmd = new SqlCommand();
private SqlDataAdapter adap = new SqlDataAdapter();
private SqlDataReader dr;
public SqlDataReader Dr
{
get { return dr; }
set { dr = value; }
}
public SqlDataAdapter Adap
{
get { return adap; }
set { adap = value; }
}
public SqlCommand Cmd
{
get { return cmd; }
set { cmd = value; }
}
public SqlConnection Conn
{
get { return conn; }
set { conn = value; }
}
}
برا MySql کافی هست اون رو به این شکل تغییر بدیم:
// using MySql.Data.MySqlClient
public class Dal
{
private MySqlConnection conn = new MySqlConnection("server={localhost};user id={root}; password={}; database=db_blog; pooling=false"");
private MySqlCommand cmd = new MySqlCommand();
private MySqlDataAdapter adap = new MySqlDataAdapter();
private MySqlDataReader dr;
public MySqlDataReader Dr
{
get { return dr; }
set { dr = value; }
}
public MySqlDataAdapter Adap
{
get { return adap; }
set { adap = value; }
}
public MySqlCommand Cmd
{
get { return cmd; }
set { cmd = value; }
}
public MySqlConnection Conn
{
get { return conn; }
set { conn = value; }
}
}
نقل قول: Select از SQL Server و Insert در MySql
مرسی از راهنماییت من کانکشن خودم رو تو این کلاس میسازم که به شکل زیر هست ولی ارروری که زیرش میزارم رو بهم میگیره من من مای اس کیو ال روی پورت 8080 ران دارم و اس کیور سرور روی پورت 80
class MySqlDataAccessLayer
{
private MySqlConnection con;
private MySqlCommand cmd;
private MySqlDataAdapter da;
private MySqlDataReader dr;
public MySqlDataAccessLayer()
{
con = new MySqlConnection();
cmd = new MySqlCommand();
da = new MySqlDataAdapter();
cmd.Connection = con;
da.SelectCommand = cmd;
}
public void Connect()
{
MySqlConnectionStringBuilder conn_string = new MySqlConnectionStringBuilder();
conn_string.Server = "localhost";
conn_string.Port = 8080;
conn_string.UserID = "root";
conn_string.Password = "";
conn_string.Pooling = false;
conn_string.Database = "testdb";
con.ConnectionString = conn_string.ToString();
con.Open();
}
public void DisConnect()
{
con.Close();
}
/// <summary>
///
/// </summary>
/// <param name="command">دستور sql</param>
public void DoCommand(string command)
{
Connect();
cmd.Parameters.Clear();
cmd.CommandText = command;
//cmd.CommandType = MySqlCommand.Text;
cmd.ExecuteNonQuery();
DisConnect();
}
}
ارور:
n unhandled exception of type 'System.TimeoutException' occurred in MySql.Data.dll
Additional information: Unable to read data from the transport connection: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.
نقل قول: Select از SQL Server و Insert در MySql
جواب سوالت رو بلد نیستم یا راستش الان خستم شما اروری رو که گرفتی تو نت سرچ بکن، ولی یه توصیه بهت دارم ، من اگر می تونی از Access واگر کافی نیست از MSSQL استفاده بکن ، من تقریبا یسال پیش یه پروژه Asp.Net رو با MySql پیاده کردم فقط واسه اینکه ارزون در بیاد،اوایل کار خوب پیش می رفت ولی بعد هی به ارور برخوردم و گاها نتونستم حلشون کنم و تو فرومای خارجیم کی نتونستم راهنماییم کنه این بود که به غلط کردن افتادم و رفتم سراغ همون MSSQL ، قابل ذکر اینکه من سالها با PHP & MySql کار کردم و مشکلی نداشتم منتها باز لازم میدونم بهت بگم که دردسرای مذکور ممکنه از بیسوادی خود من باشه ولی گفتم بهت بگم بد نیست..