private void comboBoxDB_SelectedIndexChanged(object sender, EventArgs e) { try { string rstmsg = ""; IDbLink dal = new DbLink(); int id = 0; var lisitem = comboBoxDB.SelectedItem as ListItem; id = string.IsNullOrEmpty(lisitem.ID) ? 0 : int.Parse(lisitem.ID); //id = comboBoxDB.SelectedValue.ToString() == "" ? 0 : int.Parse(comboBoxDB.SelectedValue.ToString()); DbLinkInfo dlinfo = dal.DbLinkGetInfo(id); IDataBase dbDal = new CurrencyDal.CodeMaker.DataBase(); DataBaseInfo dbinfo = dbDal.GetTableInfo(dlinfo, out rstmsg); comboBoxTable.DataSource = null; List <ListItem> list = new List <ListItem>(); TableInfo model = new TableInfo(); list.Add(new ListItem("请选择表", "请选择表")); foreach (TableInfo item in dbinfo.Tables) { TableInfo modeltable = new TableInfo(); list.Add(new ListItem(item.xType, item.Name)); } comboBoxTable.DataSource = list; } catch (Exception ex) { string msgerror = ex.Message; } }
private DataBaseInfo GetDbInfo(int DbLinkId) { IDbLink dal = new DbLink(); DbLinkInfo dlinfo = dal.DbLinkGetInfo(DbLinkId); IDataBase dbDal = new CurrencyDal.CodeMaker.DataBase(); string rstmsg = ""; string tableName = ""; List <string> tableNameList = new List <string>(); DbDataTypeEnum dtype = DbDataType.GetDbDataType(dinfo.NameType); if (dtype == DbDataTypeEnum.表) { tableName = dinfo.Name; //oracle数据库表名大写 if (dlinfo.DbType == 2) { tableName = tableName.ToUpper(); } tableNameList.Add(tableName); } DataBaseInfo dbinfo = dbDal.DataBaseGetInfo(dlinfo, tableNameList, out rstmsg); return(dbinfo); }
private DataBaseInfo GetDbInfo(int ID) { IDbLink dal = new DbLink(); DbLinkInfo dlinfo = dal.DbLinkGetInfo(ID); IDataBase dbDal = new CurrencyDal.CodeMaker.DataBase(); string rstmsg = ""; List <string> tableNameList = new List <string>(); string tableName = ""; DbDataTypeEnum dtype = DbDataType.GetDbDataType(dinfo.NameType); if (dtype == DbDataTypeEnum.表) { tableName = dinfo.Name; tableNameList.Add(tableName); } DataBaseInfo dbinfo = dbDal.DataBaseGetInfo(dlinfo, tableNameList, out rstmsg); //DataBaseInfo2 info = new DataBaseInfo2(); //try //{ //switch (dlinfo.DbType) //{ // case 1: // System.Data.Common.DbConnection connSql = new System.Data.SqlClient.SqlConnection(); // connSql.ConnectionString = "Data Source=" + dlinfo.DataSource + ";Initial Catalog=" + dlinfo.DbName + ";User ID=" + dlinfo.UserName + ";Password="******"Data Source=" + dlinfo.DbName + ";User ID=" + dlinfo.UserName + ";Password="******""; // info.GetOracleDb(connOracle); // break; // case 3: // string ConnString = dlinfo.DataSource; // info.LoadFromAccess2000(ConnString); // break; //} //} //catch (Exception ex) //{ // MessageBox.Show("操作失败。" + ex.Message); //} return(dbinfo); }
private DataBaseInfo GetDbInfo() { IDbLink dal = new DbLink(); DbLinkInfo dlinfo = dal.DbLinkGetInfo(dinfo.DbLinkID); IDataBase dbDal = new CurrencyDal.CodeMaker.DataBase(); string rstmsg = ""; List <string> tableNameList = new List <string>(); tableNameList.Add(dinfo.Name); DataBaseInfo dbinfo = dbDal.DataBaseGetInfo(dlinfo, tableNameList, out rstmsg); return(dbinfo); }
private DataBaseInfo GetDbInfo() { IDbLink dal = new DbLink(); int id = 0; var lisitem = comboBoxDB.SelectedItem as ListItem; id = string.IsNullOrEmpty(lisitem.ID) ? 0 : int.Parse(lisitem.ID); //id = comboBoxDB.SelectedValue.ToString() == "" ? 0 : int.Parse(comboBoxDB.SelectedValue.ToString()); var dlinfo = dal.DbLinkGetInfo(id); IDataBase dbDal = new CurrencyDal.CodeMaker.DataBase(); string rstmsg = ""; List <string> tableNameList = new List <string>(); string tableName = lb_DbMessage.Text; if (tableName.IndexOf(",") > 0) { string[] nameitem = tableName.Split(',').ToArray(); if (listTable.Count > 0) { listTable.Clear(); } foreach (var item in nameitem) { listTable.Add(item); tableNameList.Add(item); } } else { if (listTable.Count > 0) { listTable.Clear(); } listTable.Add(tableName); tableNameList.Add(tableName); } DataBaseInfo dbinfo = dbDal.DataBaseGetInfo(dlinfo, tableNameList, out rstmsg); return(dbinfo); }
private void btn_import_Click(object sender, EventArgs e) { //导入Excel表格时将列展开,如果列显示不全可能缺少某列 int rst = 0; string rstmsg = ""; //获取文件数据 //rst = GetDataSet(out rstmsg); //if (rst != 1) //{ // MessageBox.Show(rstmsg); // return; //} btnRefresh_Click(null, null); //导入文件数据 if (ds == null) { MessageBox.Show("导入数据为空。"); return; } if (ds == null || ds.Tables == null || ds.Tables.Count < 1 || ds.Tables[0].Rows.Count < 1) { MessageBox.Show("导入数据为空。"); return; } CurrencyDal.CodeMaker.DataBase dal = new CurrencyDal.CodeMaker.DataBase(); IDbLink dldal = new DbLink(); DbLinkInfo dlinfo = new DbLinkInfo(); string tableName = ""; if (ckb_IsAddTable.Checked) { var lisitem = comboBoxDB.SelectedItem as ListItem; int DbLinkID = string.IsNullOrEmpty(lisitem.ID) ? 0 : int.Parse(lisitem.ID); dlinfo = dldal.DbLinkGetInfo(DbLinkID); tableName = tb_AddTableName.Text.Trim(); dinfo = new DbDataInfo(); dinfo.DbLinkID = DbLinkID; dinfo.DbName = dlinfo.DbName; dinfo.Name = tableName; dinfo.NameType = (int)DbDataTypeEnum.表; } else { dlinfo = dldal.DbLinkGetInfo(dinfo.DbLinkID); tableName = dinfo.Name; } List <string> fieldlist = new List <string>(); string field = tb_field.Text.Trim(); field = field.Replace(" ", ""); DataBaseInfo dbinfo = new DataBaseInfo(); int index = tabControl1.SelectedIndex; DataTable dt = ds.Tables[index]; #region 新建表 if (ckb_IsAddTable.Checked && dt != null && dt.Rows.Count > 0) { string sqlmsg = ""; CurrencyDal.CodeMaker.RunSql rdal = new CurrencyDal.CodeMaker.RunSql(); field = ""; StringBuilder sql = new StringBuilder(); tableName = tb_AddTableName.Text.Trim(); string sqljc = "select 1 As Num from " + tableName; DataSet dsjs = rdal.Run(dlinfo, sql.ToString(), out sqlmsg, out rstmsg); try { if (dsjs != null && dsjs.Tables[0] != null) { MessageBox.Show("表" + tableName + "已存在。"); return; } } catch { } sql.Append("Create Table "); sql.Append(tableName); sql.Append(" ( "); string createField = ""; string fieldType = ""; if (dlinfo.DbType == 1) { fieldType = "nvarchar"; } else if (dlinfo.DbType == 2) { fieldType = "nvarchar2"; } else if (dlinfo.DbType == 3) { fieldType = "nvarchar"; } else { fieldType = "nvarchar"; } for (int i = 0; i < dt.Columns.Count; i++) { string cname = dt.Columns[i].ColumnName; //sql.Append("[" + cname + "] [nvarchar](255) NULL,"); if (createField == "") { createField = cname + " " + fieldType + "(255) NULL"; } else { createField += "," + cname + " " + fieldType + "(255) NULL"; } if (field == "") { field = cname; } else { field += "," + cname; } } sql.Append(createField); sql.Append(")"); DataSet dset = rdal.Run(dlinfo, sql.ToString(), out sqlmsg, out rstmsg); } #endregion dbinfo = GetDbInfo(dinfo.DbLinkID); TableInfo tinfo = dbinfo.Tables[tableName]; rst = dal.ImportData(dlinfo, tinfo, field, dt, out rstmsg); MessageBox.Show(rstmsg); }