呵呵,终于给弄出来了,毕业论文可以继续了,整理出来,让需要的朋友不至于向我这么辛苦,关于代码什么的在我的另外一个随便里面有叫数据挖掘的里面有!!如果觉得有用支持一下,觉得不好请指出!!呵呵,完全自学啊,要拍砖请轻点!
步骤一:创建analysis Services项目
步骤二:创建数据源。即选择要基于分析的数据源,比如数据库等,即其他各种ole db规范支持的数据源。这里就不多讲了。
步骤三:下面就是根据向导来了。具体的各步骤看截图啊。焦点所在的地方就是要点击的地方。
步骤四:为方便就用sqlserver的数据库了,如图:
步骤五:设置用户凭据,呵呵,就先这么设吧,否则或许在么个地方会报错,具体哪我也给忘了,具体原因你查阅其他资料吧。
步骤六:为方便就用他默认的吧
步骤七:新建数据源视图,在选择数据源的地方就用刚才建的那个了。
步骤七:新建挖掘结构
步骤八:定义挖掘结构
步骤九:选择微软决策树算法
步骤十:其余直接下一步,直到如图所示界面,指定分析所用的列。
步骤十一:直接下一步之道结束,这样创建就完成了,部署一下,然后就可以在挖掘结构设计器中进行模型修改,参数设置以及预测和各种报表的查看了!
步骤十二:创建角色,并给角色分配权限,否则会拒绝的!!
步骤十二:在Role设计,成员中点击添加,进入如图所示的页面,用户名就是域名\用户名,在我的电脑中就是那个了,呵呵,那就是偶的名字了,哎,为了给大家清晰的展示,连名字都没有替换掉,就别拍的太重了哈!
步骤十三:然后就是权限设置了,最简单的当然是在常规里面选择完全控制(管理员)了。
步骤十四:最容易产生错误的地方了,也是促使我写这篇博客的地方,呵呵,整了好长时间才发现这里有问题,以前没弄个,估计你也没弄过啊,要不你也不会看了,呵呵,设置项目属性。
注意目标数据库的设置!
步骤十五:代码示例就是预测刚才的值了,需要引入组件:Microsoft.AnalysisServices(代码已通过测试,在窗口设计器中加入文本控件TextBox1)
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Data.OleDb;
using Microsoft.AnalysisServices;
using Microsoft.AnalysisServices.AdomdClient;
namespace 数据挖掘预测
{
public partial class Form1 : Form
{
string con = "Data Source=localhost;Initial Catalog=Northwind;Integrated Security=SSPI;";
//string con = "location=localhost; Initial Catalog=dataMining;Integrated Security=SSPI;";
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
predict();
}
public void predict()
{
//Create connection and command objects.
AdomdConnection cn = new AdomdConnection(con);
AdomdCommand cmd = new AdomdCommand();
//Initialize command with query
cmd.Connection = cn;
cmd.CommandText = "SELECT * " +
"FROM Customers NATURAL PREDICTION JOIN " +
"(SELECT '02389-673' AS [Postal Code], 'DF' AS [Region]) as t";
// Open connection and write result to debug window
cn.Open();
//ExecuteScalar is not supported in the RTM version of
AdomdDataReader reader = cmd.ExecuteReader();
reader.Read();
TextBox1.Text = reader.GetString(0).ToString();
//Close connection
cn.Close();
}
}
}