У меня есть веб-проект, который должен изменить строку подключения на основе выполнения запроса. Вот мой код, в котором я определяю строку подключения:
protected void GetConnection(string cnn_db = "NEWBULKSMS")
{
try
{
string Cnn_Str = "";
//string ServerName = "SERVER2008\\SQL_EXP_2008";
//string DBUserName = "sa";
//string DBPassword = "sa_123";
string ServerName = "SHREE-PC";
string DBUserName = string.Empty;
string DBPassword = string.Empty;
DBPassword += "c#" + Convert.ToChar(49);
string Database = cnn_db;
Cnn_Str = "Data Source=" + ServerName + "; UID=" + DBUserName + "; PWD=" + DBPassword + "; Database=" + Database+";Integrated Security = True";
//Cnn_Str = "Data Source=SHREE-PC;Initial Catalog=Project_DB_MNG;Integrated Security=True";
mstr_ConnectionString = Cnn_Str;
mobj_SqlConnection = new SqlConnection(mstr_ConnectionString);
mobj_SqlCommand = new SqlCommand();
mobj_SqlCommand.CommandTimeout = mint_CommandTimeout;
mobj_SqlCommand.CommandType = CommandType.StoredProcedure;
mobj_SqlCommand.Connection = mobj_SqlConnection;
mobj_SqlConnection.Open();
}
catch (Exception ex)
{
throw new Exception("Error initializing data class." + Environment.NewLine + ex.Message);
}
}
А вот запрос, который меняет мою базу данных с именем таблицы, который должен изменить соединение:
str = "SELECT ROW_NUMBER() OVER (ORDER BY RowId DESC) AS RowNumber, p.CampaignName,";
str += "p.MobileNo,";
str += "p.Message,";
str += "p.CharCount,";
str += "p.strSenderID AS Sender,";
str += "u.strUserName AS UserId,";
str += "ds.strDR AS DeliveryStatus,";
str += "ds.strDiscription AS Original_DRStatus,";
str += "m.strMessageType AS MessageType,";
str += "CONVERT(VARCHAR(20), p.ReceiveTime) AS ReceiveTime,";
str += "CONVERT(VARCHAR(20), p.SendTime) AS SendTime,";
str += "CONVERT(VARCHAR(20), p.DoneTime) AS DoneTime,";
str += "p.RootId AS Root,";
str += "sp.ProviderName,";
str += "(CASE intAccountType WHEN 1 THEN 'Promotional' WHEN 2 THEN 'Transactional' WHEN 3 THEN 'OptIn' END) as AccountType";
str += " INTO ##Results3 ";
//str += " FROM NEWSMSLOG_2019_01..LOG_010119 p "; //here I want to change connection string with another database
str += " FROM NEWBULKSMS.dbo.LOG_010119 p ";
str += " INNER JOIN deliverstatus ds ON p.DeliveryStatus = ds.intDR_status inner join users u on u.id = p.userid";
str += " LEFT JOIN senderids b ON b.id = p.senderid";
str += " LEFT JOIN messagetype m ON m.intcode = p.messagetype";
str += " LEFT JOIN smppproviders sp ON sp.RootId = p.RootId";
str += " WHERE 1 = 1 ";
Как мне сделать это программным путем на основе выбора запроса?
Пожалуйста, помогите мне, ребята