登录
注册
论坛
空间
帮助
会员
界面
简洁版本
在线
微软BI开拓者
其他
灌水区
快速搭建ERP的数据库框架
数据库专区
SQL Server管理
SQL Server开发
SQL Azure云数据库
商业智能综述区
BI探讨
BI项目管理
数据仓库专区
ETCL设计
SSIS使用与管理
SSIS二次开发
多维分析专区
多维建模
SSAS配置管理
MDX
SSAS二次开发
数据挖掘专区
数据挖掘建模
DMX
DM应用开发
前端应用专区
SharePoint Excel PowerPivot
SQL Server Reporting Services
PerformancePoint及其相关产品
其他
站务
灌水区
培训相关
求职招聘区
1
/ 1 页
1
跳转
页
查看:
2771
快速搭建ERP的数据库框架
zhqian
夜郎王子
个人空间
组别:
版主
性别:
生日:
1983-4-8
来自:
积分:
119
帖子:
342
注册:
2007-05-10
2007-11-14 08:23
|
只看楼主
树型
|
收藏
|
小
中
大
1
快速搭建ERP的数据库框架
本文以sql server为
数据库
服务器
,t-sql是标准sql语言的扩充。)在ERP的
软件
中,
数据库
是它的灵魂。每一个ERP
软件
都有自己的
数据库
,而这些
数据库
中最关键的是
数据库
框架。那么什么是
数据库
框架?他的作用是什么?为什么要在安装时搭建
数据库
框架?本文就来解答这些问题。
在编写ERP,MIS,S/B等
数据库
的应用程序时,首先要做的一件事就是建立
数据库
框架,它至少包括:
数据库
和
数据库
中的表,当然还有视图、存储过程等,这就是
数据库
框架(不含具体的数据)。然后是使用vb,vc,vfp,pb等编程语言开发用户界面,接受用户对
数据库
的操作。当你成功的开发了一个ERP
软件
后,你需要将它打包,最后交给客户安装并使用。这时就有一个问题,当你打包的时候,不可以将sql server打包到安装程序中,所以用户在使用时就必须先建立
数据库
框架,而用户并不知道
数据库
的框架结构,ERP
软件
又必须访问特定的
数据库
框架才可以成功运行,这时我们就需要有一个可以自动生成
数据库
框架的程序。举个例:当开发一个人力资源管理系统时,需要一个
数据库
框架,这最起码在
数据库
包含一个表,表中包含姓名,年龄,工资等信息,然后通过客户端来访问这个表。如果没有这个表,程序就不可能成功的运行。现在大家清楚了什么是
数据库
框架和他的作用了吧!
现在的ERP
软件
中都带有自动生成
数据库
框架的功能,不同
软件
的实现方法不同,总结一下,大约有3种:
1.以向导的形式出现;
2.在安装时以配置系统的形式出现;
3.集成在主程序中,当主程序第一次运行的时候自动生成
数据库
框架。
不论是那种方式,他们的用途都是一样。
如果大家有《管家婆》的ERP,可以安装来看看。它要求先安装sql server ,安装完后打开sql server你会发现sql server
数据库
中只有它默认的几个
数据库
,并没什么不同。接着开始安装《管家婆》,安装完后随便用一下他的功能,再大开sql server你会发现,
数据库
已不同了,增加了一些
数据库
(增加的
数据库
因使用的功能和《管家婆》的版本不同而不同)。这些增加的
数据库
就是为了使用
数据库
框架自动生成。
那么,如何用程序实现自动生成
数据库
框架?现在,我们就来创建一个这样的程序。在本程序中共建立5个按钮分别是:建立
数据库
,建立表,建立约束,建立存储过程,显示数据。实现的代码如下:
Public Class Form1 Inherits System.Windows.Forms.Form Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim con As New OleDb.OleDbConnection(" Provider=SQLOLEDB.1;Integrated Security=SSPIpersist Security Info=False;Initial Catalog=Northwind;Data Source=.;Use Procedure for Prepare=1;Auto Translate=Truepacket Size=4096;Workstation ID=J;Use Encryption for Data=False;Tag with column collation when possible=False") con.Open() Dim cmd As New OleDb.OleDbCommand("create database jk", con) cmd.ExecuteNonQuery() con.Close()'建立
数据库
End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim con2 As New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPIpersist Security Info=False;Initial Catalog=jk;Data Source=.;Use Procedure for Prepare=1;Auto Translate=Truepacket Size=4096;Workstation ID=J;Use Encryption for Data=False;Tag with column collation when possible=False") con2.Open() Dim cmd As New OleDb.OleDbCommand("create table kk(id int identity(1,1) not null constraint id primary key,name char(4) not null)", con2) cmd.ExecuteNonQuery() Dim cmd2 As New OleDb.OleDbCommand("create table pp(id int not null,ads char(20) null)", con2) cmd2.ExecuteNonQuery() con2.Close()'建立2个表 End Sub Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim con2 As New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPIpersist Security Info=False;Initial Catalog=jk;Data Source=.;Use Procedure for Prepare=1;Auto Translate=Truepacket Size=4096;Workstation ID=J;Use Encryption for Data=False;Tag with column collation when possible=False") con2.Open() Dim com As New OleDb.OleDbCommand("alter table pp add primary key (id)", con2) com.ExecuteNonQuery() con2.Close()'建立约束 End Sub Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Dim con2 As New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPIpersist Security Info=False;Initial Catalog=jk;Data Source=.;UseProcedure for Prepare=1;Auto Translate=Truepacket Size=4096;Workstation ID=J;Use Encryption for Data=False;Tag with column collation when possible=False") con2.Open() Dim com As New OleDb.OleDbCommand("create proc procname as select * from kk", con2) com.ExecuteNonQuery() con2.Close()'建立存储过程 End Sub Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click Dim con2 As New OleDb.OleDbConnection("Provider=SQLOLEDB.1;Integrated Security=SSPIpersist Security Info=False;Initial Catalog=jk;Data Source=.;Use Procedure for Prepare=1;Auto Translate=Truepacket Size=4096;Workstation ID=J;Use Encryption for Data=False;Tag with column collation when possible=False") Dim com As New OleDb.OleDbCommand("procname", con2) Dim da As New OleDb.OleDbDataAdapter() da.SelectCommand = com Dim ds As New DataSet() da.Fill(ds) DataGrid1.DataSource = ds'显示数据 End SubEnd Class
在Button1_Click中,连接对象的连接字符串和其他Button_Click中的连接字符串不同。因为我门要创建一个新的
数据库
jk,但是这个
数据库
并不存在,所以要通过这个连接让它连接到一个sql server中已有的
数据库
,获得对整个sql server的的访问控制权限,再建立jk
数据库
。而其它的Button_Click直接连接到jk
数据库
。因为我们要在jk
数据库
中建立表,存储过程,约束,显示数据。
程序中Button2_Click建立了两个表,kk和pp。其中kk包括一个种子列并且设定为主键。Pp是一个一般的表,在Button3_Click中建立它的主键约束。当然我们也可以建立其它的约束,只要改变t-sql语句就可以了。
Button_Click的存储过程是查询kk表中数据,由于没有输入到kk表中的数据,所以运行后将会看见kk表是空的(如图)。但是这并不重要,因为对于ERP来说,所有的数据都是可以在客户端输入的,要的只是
数据库
框架。
细心的读者一定会发现我没有建立表的关系,其实大家想一下在sql server中虽然提供了可视工具来创建表的关系,但是说到底还是用的t-sql语句来建立,不信的话大家可以打开脚本文件来看看,如果你有微软的sql server的培训教材,打开实验部分看看就会发现,表的关系是用t-sql语句来写的,你只要将本文的存储过程的语句变成相应的关系语句就可以了。对于视图也是一样。
在测试这个程序时请大家按照Button1,Button2,Button3, Button4,Button5的顺序来单击,这样就可以完成建立
数据库
框架的功能,你也可以把前4个部分写到一个
模块
中。由于每一台计算机的
数据库
服务器
的名字不一样,所以在测试代码时要将连接字符串中的
服务器
指定为当前的
数据库
服务器
名字。
本文所介绍的实例在vb.net ,win2000 sp2, sql server 2000中验证通过。
http://bbs.icesfly.cn/viewthread.php?tid=3451&pid=7153&page=1&extra=page%3D1#pid7153
中国数据库联盟 :http://cndba.5d6d.com
发送短消息
查看公共资料
查找该会员全部帖子
UID:
65
精华:
0
威望:
3
金钱:
119.05 元
ProSrv-:
0
状态:
离线
76557298
PerformancePoin
个人空间
组别:
新手上路
性别:
来自:
积分:
3
帖子:
26
注册:
2007-10-23
2007-11-14 11:31
|
树型
|
收藏
|
小
中
大
2
回复:快速搭建ERP的数据库框架
鉴定完毕,内容,质量,格式,之差为本站之最。
发送短消息
查看公共资料
查找该会员全部帖子
UID:
884
精华:
0
威望:
0
金钱:
3.2 元
ProSrv-:
0
状态:
离线
zefuzhang
个人空间
组别:
版主
性别:
来自:
北京
积分:
169
帖子:
288
注册:
2007-04-10
2007-11-14 13:04
|
树型
|
收藏
|
小
中
大
3
回复:快速搭建ERP的数据库框架
路过,灌水第一
发送短消息
查看公共资料
查找该会员全部帖子
UID:
13
精华:
2
威望:
7
金钱:
169.25 元
ProSrv-:
0
状态:
离线
zefuzhang@live.cn
286663484
zhqian
夜郎王子
个人空间
组别:
版主
性别:
生日:
1983-4-8
来自:
积分:
119
帖子:
342
注册:
2007-05-10
2007-11-22 14:01
|
只看楼主
树型
|
收藏
|
小
中
大
4
回复:快速搭建ERP的数据库框架
哈哈!
中国数据库联盟 :http://cndba.5d6d.com
发送短消息
查看公共资料
查找该会员全部帖子
UID:
65
精华:
0
威望:
3
金钱:
119.05 元
ProSrv-:
0
状态:
离线
76557298
<<
上一主题
|
下一主题
>>
1
/ 1 页
1
跳转
页
论坛跳转...
数据库专区
SQL Server管理
SQL Server开发
SQL Azure云数据库
商业智能综述区
BI探讨
BI项目管理
数据仓库专区
ETCL设计
SSIS使用与管理
SSIS二次开发
多维分析专区
多维建模
SSAS配置管理
MDX
SSAS二次开发
数据挖掘专区
数据挖掘建模
DMX
DM应用开发
前端应用专区
SharePoint Excel PowerPivot
SQL Server Reporting Services
PerformancePoint及其相关产品
其他
站务
灌水区
培训相关
求职招聘区
内务
服务测试区
我的主题
我的帖子
我的精华
我的空间
帖子标题
空间日志
相册标题
作 者
我的主题
我的帖子
我的附件
我的精华
我的空间