数据库字段属性配置工具界面[用于代码生成]

   在CodeSmith中为了实现对数据库中表字段的选择和针对字段来设置属性,决定用XML文件作为中间数据的交换方式,在CodeSmith中读取数据库对象的信息不再使用SchemaExplorer来读取,而是转为直接对XML文件的读取。

这两天做了一个配置工具,先发个界面上来:

主要是用SQLDMO来获取数据库中的对象信息,并通过PropertyGrid控件来进行属性的设置,基本的功能已经实现。

 

网友的意见:

主界面从上往下由以下控件构成:
1.菜单
2.工具栏(数据库连接按钮、?、保存、退出)
3.左侧是TabControl和treeview控件、中间是Label(BorderStyle=Fixed3D)和ListView控件、右侧是PropertyGrid

根据界面,本人的实现思路如下:
1.数据库treeview列表
单击[数据库连接按钮]打开数据源配置对话框,其中包括数据源、连接字符串等等.如果数据源是SQL Server库可用以下方式枚举SQL Server实例
using System.Data.Sql

private void EnumInstance()
{
SqlDataSourceEnumerator instance = SqlDataSourceEnumerator.Instance;
DataTable dataTable = instance.GetDataSources();
//将数据库实例名添加至ComboBox,假如窗体有cboInstance控件
foreach (DataRow row in dataTable.Rows)
{
cboInstance.Items.Add(row[1]);
}
}

数据源连接如果能成功打开,则:将实例下的所有数据库加载至TreeView控件(数据库名可从SQL Server系统字典中获得,Oracle库同理)
某个SQL Server实例下的所有数据库可通过如下语句获得:
select name from master..sysdatabases

2.TreeView控件内容:
单击左侧树形结点至[表]结点后,引发treeView控件的AfterSelect事件,AfterSelect事件的内容大概如下:
select * from sysobjects //获得库中的表信息
select * from syscolumns //获得库中的列信息

用sysobjects和syscolumns两表作内联结就应该能做出ListView的内容项

 

我用的是SQLDMO,没有用SQL语句去系统表中查询

 

出处:http://terrylee.cnblogs.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值