📄 form1.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.AnalysisServices;
using System.Data.SqlClient;
using System.Data.OleDb;
//using Microsoft.AnalysisServices.AdomdServer;
namespace ADO
{
public partial class FrmTest : Form
{
Server m_svr;
Database m_db;
MiningStructure m_ms;
//MiningModel m_mm;
//string ProgressString;
string Message;
string constring;
// Microsoft.AnalysisServices.AdomdServer
public FrmTest()
{
InitializeComponent();
//m_ms.Process(
Message = "";
constring = "Data Source=localhost;Integrated Security=SSPI;Persist Security Info=true;Initial Catalog=ZJXT;User Id=sa;Password=123";
}
private void btnSource_Click(object sender, EventArgs e)
{
CreateDatabase();
Message = "数据源创建完毕!";
MessageBox.Show(Message);
}
private void CreateDatabase()
{
m_svr = new Server();
m_svr.Connect("Provider=msolap;Data Source=localhost");
//OleDbConnection cn = new OleDbConnection(constring);
m_db = new Database("ZJXT1", Utils.GetSyntacticallyValidID("ZJXT1", typeof(Database)));
if (m_svr.Databases.ContainsName("ZJXT1"))
m_svr.Databases.RemoveAt(m_svr.Databases.IndexOfName("ZJXT1"));
m_svr.Databases.Add(m_db);
m_db.Update();
// svr.Disconnect();
}
private void btnView_Click(object sender, EventArgs e)
{
CreateDataAccessObjects(m_db);
Message = "数据视图创建完毕!";
MessageBox.Show(Message);
}
private void CreateDataAccessObjects(Database db)
{
RelationalDataSource ds = new RelationalDataSource("ZJXT", "ZJXT");
ds.ConnectionString = constring;
//"Provider=SQLNCLI;Data Source=202.114.215.77;" +"Integrated Security=SSPI;Initial Catalog=ZJXT;User Id=sa;Password=";
db.DataSources.Add(ds);//创建数据源
DataSet dset = new DataSet();
SqlConnection cn = new SqlConnection(constring);//Provider=SQLNCLI;Data Source=localhost;Integrated Security=SSPI;Initial Catalog=ZJXT
//"Integrated Security=true;Initial Catalog=ZJXT");
string st = "SELECT * FROM T_ZDZD";
SqlDataAdapter da = new SqlDataAdapter(st, cn);
da.FillSchema(dset, SchemaType.Mapped, "T_ZDZD");
st = "SELECT * FROM T_JCJC";
da = new SqlDataAdapter(st, cn);
da.FillSchema(dset, SchemaType.Mapped, "T_JCJC");
st = "SELECT * FROM T_WZWZ";
da = new SqlDataAdapter(st, cn);
da.FillSchema(dset, SchemaType.Mapped, "T_WZWZ");
DataRelation Relation;
Relation = new DataRelation("ZDrelation", dset.Tables[2].Columns["BH"], dset.Tables[0].Columns["BH"]);
dset.Relations.Add(Relation);
//Relation = new DataRelation("ZDrelation1", dset.Tables[2].Columns["WZBH"], dset.Tables[0].Columns["WZBH"]);
//dset.Relations.Add(Relation);
Relation = new DataRelation("JCrelation", dset.Tables[2].Columns["BH"], dset.Tables[1].Columns["BH"]);
dset.Relations.Add(Relation);
//Relation = new DataRelation("JCrelation1", dset.Tables[2].Columns["WZBH"], dset.Tables[1].Columns["WZBH"]);
//dset.Relations.Add(Relation);
DataSourceView dsv = new DataSourceView("ZJXT", "ZJXT");
dsv.DataSourceID = "ZJXT";
dsv.Schema = dset.Clone();
db.DataSourceViews.Add(dsv);//创建数据源视图
db.Update(UpdateOptions.ExpandFull);
}
private void btnStruct_Click(object sender, EventArgs e)
{
CreateMiningStructure(m_db);
Message = "挖掘结构创建完毕!";
MessageBox.Show(Message);
}
private void CreateMiningStructure(Database db)
{
MiningStructure ms = new MiningStructure("专家1", "专家1");
ms.Source = new DataSourceViewBinding("ZJXT");
ScalarMiningStructureColumn BH = new ScalarMiningStructureColumn("BH", "BH");
BH.Type = MiningStructureColumnTypes.Long;
BH.Content = MiningStructureColumnContents.Key;
BH.IsKey = true;
BH.KeyColumns.Add("T_WZWZ", "BH", OleDbType.Integer);
ms.Columns.Add(BH);
ScalarMiningStructureColumn YSZD = new ScalarMiningStructureColumn("YSZD", "YSZD");
YSZD.Type = MiningStructureColumnTypes.Text;
YSZD.Content = MiningStructureColumnContents.Discrete;
YSZD.KeyColumns.Add("T_WZWZ", "YSZD", OleDbType.WChar);
ms.Columns.Add(YSZD);
//构造嵌套表
TableMiningStructureColumn T_ZDZD = new TableMiningStructureColumn("T_ZDZD", "T_ZDZD");
ScalarMiningStructureColumn FSBW = new ScalarMiningStructureColumn("FSBW", "FSBW");
//T_ZDZD.ForeignKeyColumns.Add("T_ZDZD", "BRBH", OleDbType.Integer);//???
T_ZDZD.ForeignKeyColumns.Add("T_ZDZD", "BH", OleDbType.Integer);
ScalarMiningStructureColumn XXBH = new ScalarMiningStructureColumn("XXBH", "XXBH");
XXBH.Type = MiningStructureColumnTypes.Long;
XXBH.IsKey = true;
XXBH.Content = MiningStructureColumnContents.Key;
XXBH.KeyColumns.Add("T_ZDZD", "XXBH", OleDbType.Integer);
T_ZDZD.Columns.Add(XXBH);
FSBW.Type = MiningStructureColumnTypes.Long;
FSBW.Content = MiningStructureColumnContents.Discrete;
FSBW.KeyColumns.Add("T_ZDZD", "FSBW", OleDbType.Integer);
T_ZDZD.Columns.Add(FSBW);
ScalarMiningStructureColumn YZCD = new ScalarMiningStructureColumn("YZCD", "YZCD");
YZCD.Type = MiningStructureColumnTypes.Long;
YZCD.Content = MiningStructureColumnContents.Discrete;
YZCD.KeyColumns.Add("T_ZDZD", "YZCD", OleDbType.Integer);
T_ZDZD.Columns.Add(YZCD);
ScalarMiningStructureColumn FSPL = new ScalarMiningStructureColumn("FSPL", "FSPL");
FSPL.Type = MiningStructureColumnTypes.Long;
FSPL.Content = MiningStructureColumnContents.Discrete;
FSPL.KeyColumns.Add("T_ZDZD", "FSPL", OleDbType.Integer);
T_ZDZD.Columns.Add(FSPL);
ScalarMiningStructureColumn ZZBM = new ScalarMiningStructureColumn("ZZBM", "ZZBM");
ZZBM.Type = MiningStructureColumnTypes.Long;
ZZBM.Content = MiningStructureColumnContents.Discrete;
ZZBM.KeyColumns.Add("T_ZDZD", "ZZBM", OleDbType.Integer);
T_ZDZD.Columns.Add(ZZBM);
ms.Columns.Add(T_ZDZD); //
TableMiningStructureColumn T_JCJC = new TableMiningStructureColumn("T_JCJC", "T_JCJC");
//T_JCJC.ForeignKeyColumns.Add("T_JCJC", "BRBH",OleDbType.Integer);
T_JCJC.ForeignKeyColumns.Add("T_JCJC", "BH", OleDbType.Integer);
ScalarMiningStructureColumn HYJG = new ScalarMiningStructureColumn("HYJG", "HYJG");
HYJG.Type = MiningStructureColumnTypes.Double;
HYJG.Content = MiningStructureColumnContents.Discrete;
HYJG.KeyColumns.Add("T_JCJC", "HYJG", OleDbType.Integer);
T_JCJC.Columns.Add(HYJG);
ScalarMiningStructureColumn ZBBM = new ScalarMiningStructureColumn("ZBBM", "ZBBM");
ZBBM.Type = MiningStructureColumnTypes.Long;
ZBBM.Content = MiningStructureColumnContents.Discrete;
ZBBM.KeyColumns.Add("T_JCJC", "ZBBM", OleDbType.Integer);
T_JCJC.Columns.Add(ZBBM);
ScalarMiningStructureColumn JCBM = new ScalarMiningStructureColumn("JCBM", "JCBM");
JCBM.Type = MiningStructureColumnTypes.Long;
JCBM.Content = MiningStructureColumnContents.Discrete;
JCBM.KeyColumns.Add("T_JCJC", "JCBM", OleDbType.Integer);
T_JCJC.Columns.Add(JCBM);
ScalarMiningStructureColumn JCJG = new ScalarMiningStructureColumn("JCJG", "JCJG");
JCJG.Type = MiningStructureColumnTypes.Long;
JCJG.Content = MiningStructureColumnContents.Discrete;
JCJG.KeyColumns.Add("T_JCJC", "JCJG", OleDbType.Integer);
T_JCJC.Columns.Add(JCJG);
ScalarMiningStructureColumn JCLB = new ScalarMiningStructureColumn("JCLB", "JCLB");
JCLB.Type = MiningStructureColumnTypes.Long;
JCLB.Content = MiningStructureColumnContents.Discrete;
JCLB.KeyColumns.Add("T_JCJC", "JCLB", OleDbType.Integer);
T_JCJC.Columns.Add(JCLB);
ScalarMiningStructureColumn BH1 = new ScalarMiningStructureColumn("XXBH", "XXBH");
BH1.Type = MiningStructureColumnTypes.Long;
BH1.Content = MiningStructureColumnContents.Key;
BH1.IsKey = true;
BH1.KeyColumns.Add("T_JCJC", "XXBH", OleDbType.Integer);
T_JCJC.Columns.Add(BH1);
ms.Columns.Add(T_JCJC);
db.MiningStructures.Add(ms);
ms.Update();
m_ms = ms;
}
private void btnPress_Click(object sender, EventArgs e)
{
//CreateModels(m_ms);
Miningmodel Mining = new Miningmodel();
Mining.ms = m_ms;
Mining.m_db = m_db;
Mining.ShowDialog();
//Message = "模型创建完毕!";
//MessageBox.Show(Message);
//m_db.Process(ProcessType.ProcessFull);
//Message = "处理完毕!";
//MessageBox.Show(Message);
}
//private void CreateModels(MiningStructure ms)
//{
// MiningModel NNModel;
// MiningModelColumn mmc;
// NNModel = ms.CreateMiningModel(true, "Predict Disease NN");
// NNModel.Columns.Clear();
// NNModel.Algorithm = "Microsoft_Neural_Network";
// mmc = NNModel.Columns.Add("WZBH");
// mmc.SourceColumnID = "WZBH";
// mmc.Usage = "Key";
// mmc = NNModel.Columns.Add("YSZD");
// mmc.SourceColumnID = "YSZD";
// mmc.Usage = "Predict";
// mmc = NNModel.Columns.Add("T_ZDZD");
// mmc.SourceColumnID = "T_ZDZD";
// MiningModelColumn mmc1;
// mmc1 = mmc.Columns.Add("BH");
// mmc1.SourceColumnID = "BH";
// mmc1.Usage = "Key";
// //mmc1.Usage
// mmc1 = mmc.Columns.Add("ZZBM");
// mmc1.SourceColumnID = "ZZBM";
// mmc1.Usage = "Input";
// mmc1 = mmc.Columns.Add("FSBW");
// mmc1.SourceColumnID = "FSBW";
// mmc.Usage = "Input";
// mmc1 = mmc.Columns.Add("FSPL");
// mmc1.SourceColumnID = "FSPL";
// mmc1.Usage = "Input";
// mmc1 = mmc.Columns.Add("YZCD");
// mmc1.SourceColumnID = "YZCD";
// mmc1.Usage = "Input";
// mmc = NNModel.Columns.Add("T_JCJC");
// mmc.SourceColumnID = "T_JCJC";
// mmc1 = mmc.Columns.Add("BH");
// mmc1.SourceColumnID = "BH1";
// mmc1.Usage = "Key";
// mmc1 = mmc.Columns.Add("HYJG");
// mmc1.SourceColumnID = "HYJG";
// mmc1.Usage = "Input";
// mmc1 = mmc.Columns.Add("HYXM");
// mmc1.SourceColumnID = "HYXM";
// mmc.Usage = "Input";
// mmc1 = mmc.Columns.Add("JCDM");
// mmc1.SourceColumnID = "JCDM";
// mmc1.Usage = "Input";
// mmc1 = mmc.Columns.Add("JCJG");
// mmc1.SourceColumnID = "JCJG";
// mmc1.Usage = "Input";
// mmc1 = mmc.Columns.Add("JCLB");
// mmc1.SourceColumnID = "JCLB";
// mmc.Usage = "Input";
// NNModel.Update();
// m_mm = NNModel;
//}
//private void butProssese_Click(object sender, EventArgs e)
//{
// m_db.Process(ProcessType.ProcessFull);
// Message = "处理完毕!";
// MessageBox.Show(Message);
//}
//private void FrmTest_Load(object sender, EventArgs e)
//{
//}
//private void btnPredict_Click(object sender, EventArgs e)
//{
// FrmPredict Predict = new FrmPredict();
// Predict.ShowDialog();
//}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -