1. unit Unit2;
  2.  
  3. interface
  4.  
  5. uses
  6. SysUtils, Classes, DB, DBClient;
  7.  
  8. type
  9. TDataModule2 = class(TDataModule)
  10. ClientDataSet1: TClientDataSet;
  11. DataSource1: TDataSource;
  12. procedure DataModuleCreate(Sender: TObject);
  13. private
  14. { Private declarations }
  15. public
  16. { Public declarations }
  17. end;
  18.  
  19. var
  20. DataModule2: TDataModule2;
  21.  
  22. implementation
  23.  
  24. uses
  25. Dialogs;
  26.  
  27. {$R *.dfm}
  28.  
  29. procedure TDataModule2.DataModuleCreate(Sender: TObject);
  30. begin
  31. with DataModule2.ClientDataSet1 do
  32. begin
  33. FileName := 'test.cds';
  34. with TStringField.Create(DataModule2.ClientDataSet1) do
  35. begin
  36. FieldName := 'test';
  37. Name := 'ClientDataSet1test';
  38. DataSet := DataModule2.ClientDataSet1;
  39. end;
  40. CreateDataSet;
  41. with IndexDefs.AddIndexDef do //或者在设计时
  42. begin
  43. Name := 'Indextest';
  44. Fields := 'test';
  45. Options := [ixDescending];
  46. end;
  47. // AddIndex('IndexTest', 'test', []); 不能用这个,否则下面一句 报

---------------------------
Project1
---------------------------
ClientDataSet1: Index 'Indextest' not found.
---------------------------
确定
---------------------------

  1. IndexName := 'Indextest';
  2.  
  3. if FileExists('test.cds') then
  4. LoadFromFile('test.cds')
  5. end;
  6. end;
  7.  
  8. end.
  1. unit Unit1;
  2.  
  3. interface
  4.  
  5. uses
  6. Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  7. Dialogs, StdCtrls, DB, DBClient, Grids, DBGrids;
  8.  
  9. type
  10. TForm1 = class(TForm)
  11. Button1: TButton;
  12. DBGrid1: TDBGrid;
  13. procedure Button1Click(Sender: TObject);
  14. private
  15. { Private declarations }
  16. public
  17. { Public declarations }
  18. end;
  19.  
  20. var
  21. Form1: TForm1;
  22.  
  23. implementation
  24.  
  25. uses
  26. Unit2;
  27.  
  28. {$R *.dfm}
  29.  
  30. procedure TForm1.Button1Click(Sender: TObject);
  31. begin
  32. with DataModule2.ClientDataSet1 do
  33. begin
  34. Append;
  35. FieldByName('test').AsString := 'test1';
  36. Post;
  37. end;
  38. end;
  39.  
  40. end.
  1. program Project1;
  2.  
  3. uses
  4. Forms,
  5. Unit1 in 'Unit1.pas' {Form1},
  6. Unit2 in 'Unit2.pas' {DataModule2: TDataModule};
  7.  
  8. {$R *.res}
  9.  
  10. begin
  11. Application.Initialize;
  12. Application.MainFormOnTaskbar := True;
  13. Application.CreateForm(TDataModule2, DataModule2);
  14. Application.CreateForm(TForm1, Form1);
  15. Application.Run;
  16. end.

TClientDataSet的 AddIndex的更多相关文章

  1. 第十一章 TClientDataSet

    第十一章 TClientDataSet 与TTable.TQuery一样,TClientDataSet也是从TDataSet继承下来的,它通常用于多层体系结构的客户端.TClientDataSet最大 ...

  2. TClientDataSet的 fastscript封装

    TClientDataSet的 fastscript封装 // 陈新光 2017-2-10// TClientDataSet's fastscript unit fs_ClientDataSet; i ...

  3. delphi TClientDataSet 保存到XML

    procedure ExPortNodeQuantifyComponent1(aCDS: TClientDataSet; aCurrNode: TXMLNode); var mStream: TMem ...

  4. stringgird中使用TClientDataSet排序的问题

    function TfrmMain.createIIReport(cdsBody: TClientDataSet;  silent: Boolean): String;var    s,sText: ...

  5. Delphi 为TClientdataset定义结果集,并增加记录

    Delphi 为TClientdataset定义结果集,并增加记录 procedure addDefsFieldsForCDS(aDataSet: TClientDataSet);begin  aDa ...

  6. cxGrid控件过滤排序和TClientDataSet同步

    https://www.cnblogs.com/false/archive/2013/02/24/2924240.html procedure TReport10Form.cxGridViewData ...

  7. TClientDataSet 提交时提示 Field value Required 但是未提示具体哪个字段。

    TClientDataSet 提交时提示 Field value Required 但是未提示具体哪个字段. 这个错误特别麻烦,要使用 midas 控件时,虽然很方便.但是出错了根本找不到原因,特别是 ...

  8. TClientDataSet[9]: 计算字段和 State

    TClientDataSet 中计算字段有两种: Calculated(计算字段).InternalCalc(内部计算字段). 两者区别是: Calculated 在每次需要时都要重新计算; Inte ...

  9. delphi开发学习四:TClientDataSet与TDataSetProvider控件使用实例

    1.TClientDataSet控件 通过TClientDataSet控件可以建立瘦客户端的应用程序,且数据执行效率较高,但它不能和数据库自动连接,程序中必须制定它如何获取数据.一般情况下,TClie ...

随机推荐

  1. 怎样用QtCreator编辑运行python脚本

    QtCreator作为一款开发基于qt库的程序.以及开发C语言.c++语言项目都是一个利器,轻便好用.那么作为开发者来说,经常换着使用各种IDE是家常便饭,但是要是这些语言都能够集成到一个工具里岂不是 ...

  2. 51NOD 1066 Bash游戏

    1066 Bash游戏 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题   有一堆石子共有N个.A B两个人轮流拿,A先拿.每次最少拿1颗,最多拿K颗,拿到最后1颗石子的 ...

  3. Java jdbc访问sqlserver,oracle数据库 DEMO

    1.JDBC访问Oracle数据库 public class Jdbc_Oracle { // 静态代码块,只会执行一次,类似C#静态构造方法 static { try { // 加载数据库驱动一次 ...

  4. C#完美读取CSV

    /// <summary>         /// 将DataTable中数据写入到CSV文件中         /// </summary>         /// < ...

  5. python 字符串输出转义{}

    >>> print ("{} 对应的位置是 {{0}}".format("runoob")) runoob 对应的位置是 {}

  6. shell 加法计算

    Shell 相加目前发现有 3 种写法: 1. a=10 b=20 c=`expr ${a} + ${b}` echo "$c" 2. c=$[ `expr 10 + 20` ] ...

  7. ORACLE 多表查询优化收集整理

    搞WEB的离不开数据库,在一个层面上,对数据库的熟练程度决定了很多的事情. 本文就大家都纠结的ORACLE多表查询的性能问题给出一系列个优化方法,那这些都是项目中长期用到的,所以很熟,很熟,已经成为习 ...

  8. Codeforces 899E - Segments Removal

    899E - Segments Removal 思路:priority_queue+pair 代码: #include<bits/stdc++.h> using namespace std ...

  9. Chrome与之驱动对应的版本

    看到网上基本没有最新的chromedriver与chrome的对应关系表,便兴起整理了一份如下,希望对大家有用: chromedriver版本 支持的Chrome版本 v2.46 v71-73 v2. ...

  10. C#验证中文

    C#验证中文的方式有很多种,下面列举了其中几种可供参考,还有正则表达式的验证这里没有写,后面有机会再补上. 方法一: private bool isChina(string msg) { string ...