亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

sqlserver 批量數據替換助手V1.0版發布

2024-07-10 13:24:57
字體:
來源:轉載
供稿:網友
這種方法操作繁瑣,而且一般不是很懂數據庫的人很難操作。于萌發了要寫一個小程序的念頭,經過兩天時間的折騰這個小軟件終于和各位見面了,希望各位童鞋多給點意見。說了這么些之后還是先上界面吧,^..^

sqlserver 批量數據替換助手V1.0版發布

現在就來說說這個小程序的開發思路吧。
第一步:通過 sp_helpdb系統存儲過程得到SqlServer中的所有數據庫名稱。

復制代碼 代碼如下:


#region 測試數據庫連接,并顯示數據庫列表
/// <summary>
/// 測試數據庫連接,并顯示數據庫列表
/// </summary>
/// <param></param>
/// <param></param>
private void btnTest_Click(object sender, EventArgs e)
{
this.btnTest.Enabled = false;
saveConfig();

ConfigInfo.Server = this.txtIP.Text.Trim();
ConfigInfo.DataBase = "master";
ConfigInfo.UID = this.txtUID.Text.Trim();
ConfigInfo.Pwd = this.txtPwd.Text.Trim();

try
{
DataTable dt = Data.SqlHelper.ExecuteDataset(ConfigInfo.getConnect(), CommandType.Text, "sp_helpdb").Tables[0];

this.cmbDataBaseList.DataSource = dt;
this.cmbDataBaseList.DisplayMember = "name";
this.cmbDataBaseList.SelectedIndex = 0;
this.cmbDataBaseList.DropDownStyle = ComboBoxStyle.DropDownList;

this.ExecuteFilterBtn.Enabled = true;
}
catch (Exception ex)
{
this.ExecuteFilterBtn.Enabled = false;
MessageBox.Show(string.Format("錯誤:{0}!",ex.Message),"錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
this.btnTest.Enabled = true;
}
}
#endregion



第二步:當選擇某個數據庫時得到數據庫里面的所有表信息,通過下面Sql語句就可以查詢到了。
select [name] from sysobjects where xtype='u' order by [name] asc

復制代碼 代碼如下:


#region 當選擇不同的數據庫時,讀取數據庫的表信息
/// <summary>
/// 當選擇不同的數據庫時,讀取數據庫的表信息
/// </summary>
/// <param></param>
/// <param></param>
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
this.chkboxTableList.Items.Clear();
ConfigInfo.DataBase = ((DataRowView)this.cmbDataBaseList.SelectedItem)["name"].ToString();
DataSet ds = Data.SqlHelper.ExecuteDataset(ConfigInfo.getConnect(), CommandType.Text, "select [name] from sysobjects where xtype='u' order by [name] asc");

foreach (DataRow row in ds.Tables[0].Rows)
{
this.chkboxTableList.Items.Add(row["name"].ToString());
}
}
#endregion



第三步:當點擊替換按鈕時獲取被選中表的信息,并遍歷表中的行列信息,并進行查找替換。

復制代碼 代碼如下:


#region 執行批量替換操作
/// <summary>
/// 執行批量替換操作
/// </summary>
/// <param></param>
/// <param></param>
private void ExecuteFilterBtn_Click(object sender, EventArgs e)
{
saveConfig();
total = 0;
if (this.chkboxTableList.CheckedIndices.Count == 0) return; //沒有選中任何表的情況
if (this.txtSearchKey.Text.Trim() == "")
{
DialogResult result = MessageBox.Show("當前查找內容為空,確認此操作?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
if (result == DialogResult.No) return;
}

this.ExecuteFilterBtn.Enabled = false;

List<TableInfo> tabList = new List<TableInfo>();
string searchString = this.txtSearchKey.Text.Trim() == "" ? " " : this.txtSearchKey.Text;
string replaceString = this.txtReplaceStr.Text;
KeyType kt = this.chkIsRegex.Checked == true ? KeyType.Regex : KeyType.Text;
bool isRegex = this.chkIsRegex.Checked;

//得到被選中表的基本信息,并添加到集合中
foreach (int index in this.chkboxTableList.CheckedIndices)
{
string tabName = this.chkboxTableList.Items[index].ToString();
TableInfo tInfo = FilterInfo.initTableInfo(tabName);
if (tInfo == null)
{
continue;
}
tabList.Add(tInfo);
}

try
{
if (tabList.Count == 0) return; //沒有符合檢測的數據表

pBar1.Visible = true;
pBar1.Minimum = 1;
pBar1.Maximum = tabList.Count;
pBar1.Value = 1;
pBar1.Step = 1;

//循環過濾表中要替換的數據
foreach (TableInfo info in tabList)
{
FilterInfo.Execute(info, searchString, replaceString, kt);
pBar1.PerformStep(); //進度條
}
}
catch (Exception ex)
{
MessageBox.Show(string.Format("異常:{0}", ex.Message), "錯誤", MessageBoxButtons.OK, MessageBoxIcon.Error);
return;
}
finally
{
this.ExecuteFilterBtn.Enabled = true;
}

MessageBox.Show(string.Format("數據替換完畢,共有{0}行數據被修改!",total),"消息", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
#endregion


以上就是整個大致思路,詳情可以參看源代碼。

附帶一些操作截圖,希望大家可以看的更清楚一些。

sqlserver 批量數據替換助手V1.0版發布

這個就是被注入的數據,當然實際的會有區別。

sqlserver 批量數據替換助手V1.0版發布

編寫查找內容,并啟用正則匹配功能。

sqlserver 批量數據替換助手V1.0版發布

哈哈,數據終于恢復原貌?。?BR>源程序下載地址

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产日韩欧美在线动漫| 亚洲精品免费网站| 这里精品视频免费| 亚洲精品日韩激情在线电影| 色在人av网站天堂精品| 欧美成人免费观看| 97超碰国产精品女人人人爽| 91亚洲精品一区二区| 国产成人avxxxxx在线看| 亚洲欧美综合精品久久成人| 日韩精品视频在线观看免费| 亚洲第一精品夜夜躁人人爽| 亚洲精品免费一区二区三区| 久久影院资源网| 91国语精品自产拍在线观看性色| 精品日韩美女的视频高清| 亚洲aaaaaa| 久久亚洲综合国产精品99麻豆精品福利| 日韩在线视频免费观看高清中文| 久久精品国产v日韩v亚洲| 中文字幕亚洲字幕| 最近2019年好看中文字幕视频| 久久久成人的性感天堂| 不卡av日日日| 91精品国产高清自在线看超| 久热精品视频在线免费观看| 久久777国产线看观看精品| 97国产在线观看| 欧美专区在线视频| 久久精品99国产精品酒店日本| 午夜伦理精品一区| 国产综合福利在线| 亚洲第一页中文字幕| 久久视频在线视频| 国产一区二区三区丝袜| 疯狂做受xxxx高潮欧美日本| 精品国产乱码久久久久酒店| 国产最新精品视频| 亚洲精品一区二区久| 国产精品亚洲第一区| 欧美在线激情视频| 日韩电影大片中文字幕| 成人福利网站在线观看11| 亚洲黄色av女优在线观看| 久久天天躁狠狠躁老女人| 亚洲国产欧美精品| 日韩欧美亚洲范冰冰与中字| 久久手机精品视频| 成人国产精品久久久久久亚洲| 国内精品久久久久伊人av| 91在线精品视频| 精品亚洲aⅴ在线观看| 亚洲精品短视频| 成人精品视频久久久久| 欧美电影免费观看高清| 国产有码在线一区二区视频| 一区二区三欧美| 亚洲人成网站999久久久综合| 欧美在线欧美在线| 午夜欧美大片免费观看| 欧美美最猛性xxxxxx| 国产欧美日韩丝袜精品一区| 亚洲xxxx3d| 亚洲免费视频在线观看| 国产精品久久91| 国产99视频在线观看| 日韩欧美在线国产| 欧洲精品毛片网站| 色婷婷av一区二区三区久久| 亚洲午夜未删减在线观看| 国产婷婷97碰碰久久人人蜜臀| 2019中文字幕在线观看| 欧美夫妻性生活视频| 国产在线精品成人一区二区三区| 国产福利视频一区二区| 亚洲精品国精品久久99热| 欧美成人免费小视频| 国产精品久久久久国产a级| 久久视频国产精品免费视频在线| 欧美专区福利在线| 国产福利视频一区二区| 精品无人国产偷自产在线| 欧美成人免费小视频| 亚洲综合在线做性| 亚洲欧美成人在线| 精品国产91久久久久久老师| 欧美性xxxxxx| 欧美在线一区二区三区四| 丝袜一区二区三区| 精品日韩美女的视频高清| 国产精品自拍网| 久久久99久久精品女同性| 黄色成人av网| 亚洲成人在线视频播放| 日韩欧美一区二区在线| 色偷偷噜噜噜亚洲男人的天堂| 一区二区av在线| 欧美日韩第一页| 精品国产自在精品国产浪潮| 91国内精品久久| 亚洲精品videossex少妇| 亚洲视频第一页| 91精品久久久久久久久不口人| 尤物yw午夜国产精品视频明星| 国产精品夜间视频香蕉| 精品国产乱码久久久久久婷婷| 91老司机在线| 日韩在线高清视频| 午夜精品www| 亚洲精品理论电影| 性欧美在线看片a免费观看| 免费99精品国产自在在线| 日韩欧美一区二区三区久久| 亚洲精品乱码久久久久久金桔影视| 国产精品男女猛烈高潮激情| 久久精品一偷一偷国产| 最近2019中文字幕mv免费看| 亚洲的天堂在线中文字幕| 在线观看中文字幕亚洲| 91精品国产九九九久久久亚洲| 国产视频精品va久久久久久| 亚洲va欧美va国产综合久久| 欧美国产日韩一区二区三区| 欧美成人免费观看| 国产精品视频中文字幕91| 88国产精品欧美一区二区三区| 国产精品久久久久久久久久99| 亚洲天堂免费在线| 亚洲缚视频在线观看| 色综合色综合久久综合频道88| 在线视频日韩精品| 欧美色视频日本高清在线观看| 日韩国产高清污视频在线观看| 精品久久久国产| 精品福利樱桃av导航| 91精品视频大全| 亚洲精品网址在线观看| 亚洲福利视频网站| 国产精品一香蕉国产线看观看| 日韩欧美国产成人| 日本久久久a级免费| 91po在线观看91精品国产性色| 黑人巨大精品欧美一区免费视频| 91精品在线一区| 操91在线视频| 97精品国产91久久久久久| 国产精品96久久久久久又黄又硬| 国产精品第一视频| 亚洲精品一区二区在线| 最近2019免费中文字幕视频三| 一区二区中文字幕| 日韩av免费一区| 国产视频精品在线| 日韩av电影国产| 欧美日韩国产二区| 久热精品在线视频| 日韩视频免费观看| 亲爱的老师9免费观看全集电视剧| 国模精品视频一区二区三区| 都市激情亚洲色图| 欧美一区二区三区艳史| 久久综合电影一区| 亚洲最新视频在线| 日韩极品精品视频免费观看|