private void btnSaveDataBaseConfig_Click(object sender, EventArgs e) { btnSaveDataBaseConfig.Enabled = false; if (string.IsNullOrEmpty(this.txtSaveDataUrl3.Text)) { MessageBox.Show("数据库链接不能为空!", "警告!"); } else { var dbType = DataBaseType.SqlServer; var dbLink = txtSaveDataUrl3.Text; if (this.rbtnAccess.Checked) { dbType = DataBaseType.OleDb; } else if (this.rbtnMsSql.Checked) { dbType = DataBaseType.SqlServer; } else if (this.rbtnSqlite.Checked) { dbType = DataBaseType.SQLite; } else if (this.rbtnMySql.Checked) { dbType = DataBaseType.MySql; } else if (this.rbtnOracle.Checked) { dbType = DataBaseType.Oracle; } var task = new TaskFactory().StartNew(() => { using (var conn = DbHelperDapper.GetDbConnection(dbType, dbLink)) { if (conn != null && conn.State == ConnectionState.Open) { MessageBox.Show("数据库连接成功!"); } else { MessageBox.Show("数据库连接失败!"); } } btnSaveDataBaseConfig.Enabled = true; }); } }
private void StartDataBase() { string LocalSQLiteName = "Data\\Collection\\" + Model.TaskName + "\\SpiderResult.db"; DataTable dtData = DbHelper.Query(LocalSQLiteName, "Select * From Content").Tables[0]; int saveDateType = Model.SaveDataType3.Value; string connectionString = Model.SaveDataUrl3; string exeSQL = Model.SaveDataSQL3; string sql = string.Empty; DbHelperDapper.connectionString = Model.SaveDataUrl3; switch (saveDateType) { case 1: //ACCESS DbHelperDapper.dbType = DataBaseType.OleDb; break; case 2: //MSSQL DbHelperDapper.dbType = DataBaseType.SqlServer; break; case 3: //SQLITE DbHelperDapper.dbType = DataBaseType.SQLite; break; case 4: //MYSQL DbHelperDapper.dbType = DataBaseType.MySql; break; case 5: //Oracle DbHelperDapper.dbType = DataBaseType.Oracle; break; } using (var conn = DbHelperDapper.GetDbConnection(DbHelperDapper.dbType, Model.SaveDataUrl3)) { if (conn == null || conn.State != ConnectionState.Open) { MessageOut("数据库连接失败!不需要发布数据!"); return; } } foreach (DataRow dr in dtData.Rows) { try { sql = exeSQL; foreach (ModelTaskLabel mTaskLabel in Model.ListTaskLabel) { if (string.IsNullOrEmpty(dr[mTaskLabel.LabelName].ToString())) { break; } sql = sql.Replace("[" + mTaskLabel.LabelName + "]", dr[mTaskLabel.LabelName].ToString().Replace("'", "''").Replace("\\", "/")); } sql = sql.Replace("[Guid]", Guid.NewGuid().ToString()); sql = sql.Replace("[Url]", dr["HrefSource"].ToString()); DbHelperDapper.Execute(sql); MessageOut(dr["HrefSource"].ToString() + "发布成功!"); } catch (Exception ex) { Log4Helper.Write(LogLevel.Error, dr["HrefSource"].ToString() + ":保存数据库失败!", ex); MessageOut(dr["HrefSource"].ToString() + "发布失败!" + ex); continue; } } }