TUniConnection的SpecificOptions参数决定了数据库连接配置参数,但可惜的是,SpecificOptions设计器界面,Devart公司只能让它在设计期配置!

SpecificOptions参数为什么那么有用呢?举个例子讲,如果你要连接MSSQL,可能碰到老版本的OLEDB或者当下的NativeClient版本,具体参数可选为:prAuto、prSQL、prNativeClient、prCompact。

因此,我们如果自己做界面参数配置,必须获取SpecificOptions默认值和下拉框表列表值。

首先在界面上放TUniConnection,设置ProviderName为SQL Server;在界面上放置TSQLServerUniProvider

代码如下

 
type
  TMyConn = class(TUniConnection)
  end;
 
procedure TForm7.btn1Click(Sender: TObject);
var
  OptionsList: TOptionsList;
  i: Integer;
  Msg: string;
  List: TStringList;
begin
  mmo1.Clear;
  List := TStringList.Create;
  if TMyConn(UniConnection1).CanGetProvider then
  begin
    OptionsList :=   TMyConn(UniConnection1).GetProvider.GetConnectionOptions;
    for i := 0 to OptionsList.Count - 1 do
    begin
      List.Clear;
      OptionsList[i].GetValuesList(List);
      Msg := Msg + OptionsList[i].OptionName +
        ' - ' +
        VarToStr(OptionsList[i].GetDefaultValue) + ' = ' +
        OptionsList[i].GetAsString(OptionsList[i].GetDefaultValue) +
        ':' + sLineBreak + List.Text + sLineBreak;
    end;
 
    mmo1.Lines.Add(Msg);
  end;
  List.Free;
end;
 

默认的unidac配置参数界面

获取 TUniConnection.SpecificOptions默认值和下拉框列表值的更多相关文章

  1. bootstrap3中select2的默认值和下拉框的禁用

    最近做项目用到了select2插件,需求中需要给下拉框设置默认值之后,禁用下拉框,我开始的写法是这样的 <script type="text/javascript"> ...

  2. Python+selenium之获取文本值和下拉框选择数据

    Python+selenium之获取文本值和下拉框选择数据 一.结合实例进行描述 1. 实例如下所示: #新增标签操作 def func_labels(self): self.driver.find_ ...

  3. PHP文本框的值随下拉框改变

    初学PHP,下面是实现文本框内容随下拉框变化的代码实现: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  4. 关于GridControl--gridview的下拉框列(下拉列表列)

    1.Run Designer→Columns→需要设置的列→Columns properties→ColumnsEdit→New→选择(repositoryItemComboBox1) 2.给下拉框列 ...

  5. jquery学习笔记:获取下拉框的值和下拉框的txt

    <div class="form-group"> <select class="form-control" id="iv_level ...

  6. DateGridView中添加下拉框列并实现数据绑定、更改背景色

    1.添加下拉框 代码实现==> using System; using System.Collections.Generic; using System.Windows.Forms; names ...

  7. thinkphp怎么把数据库中的列的值存到下拉框中

    1. 先去数据库中查值,查询整个数据表,结果为二维数组. $project = M("project"); $cell = $project->where(array('st ...

  8. EXT学习之——EXT下拉框默认绑定第一个值

    //默认第一个下拉框绑定值if (this.moduleCombo.store.getAt(0) != undefined) { this.moduleCombo.setValue(this.modu ...

  9. js表单快速取值/赋值 快速生成下拉框

    1.表单取值/赋值公共方法 //表单序列化:文本框的name字段和数据源一致<form id="myForm" onsubmit="return false;&qu ...

随机推荐

  1. 关于DDOS的主动与智能防御

    -   善守者藏于九地之下    - -  狡兔九窟 - 一.分配足够多的网关服务器 让用户总一个终点,可以进入游戏.多分配,动态分配,定期更新 二.用户分组分级 分组可以根据用户的生成时间, 在线时 ...

  2. batch normalization在测试时的问题

    验证: 在测试时可以一张图,但设置use_global_stats:true,已经验证,第一台4gpu上,路径:/home/guangcong/projects/unlabeled-video/tra ...

  3. 20165228 2017-2018-2 《Java程序设计》第6周学习总结

    20165228 2017-2018-2 <Java程序设计>第6周学习总结 教材学习内容总结 String类用来处理字符序列及其用法 StringTokenizer对象及类的使用 Sca ...

  4. aliyun服务器对象存储oss

    aliyun OSS 使用简单.方便. 官方网址 aliyun.com 首先通过aliyun管理控制台申请OSS服务.通过AccessKeys分配Access Key ID和Access Key Se ...

  5. [LeetCode&Python] Problem 427. Construct Quad Tree

    We want to use quad trees to store an N x N boolean grid. Each cell in the grid can only be true or ...

  6. 关于Adaboost——样本抽样的权值的实际意义

    看这篇文章的前提:已经看了PRML中的Adaboost的算法流程 看懂下面的内容必须牢牢记住:Adaboost使用的误差函数是指数误差 文章主要目的:理解样本抽样的权值是为什么那样变化的. 得出的结论 ...

  7. P1441 砝码称重(搜索+队列dp)

    题目链接:传送门 题目大意: 给你n个砝码ai,从中去掉m个后求最多的砝码可表示的重量. n≤20,m≤4,m<n,ai≤100. 思路: 用dfs搜掉m个砝码,然后用队列dp跑出答案,维护答案 ...

  8. 玩vue+mockjs

    玩vue+mockjs vue中用mock制造模拟接口(本文主要解决坑),一定要看完哦 最近新入职一家公司,后端造接口速度很慢,想来想去还是搞一套模拟接口,来满足开发需求,有人会问,我造一个死数据不就 ...

  9. hdu4336 Card Collector 容斥原理

    In your childhood, do you crazy for collecting the beautiful cards in the snacks? They said that, fo ...

  10. Go Example--通道方向

    package main import "fmt" func main() { pings := make(chan string, 1) pongs := make(chan s ...