⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 udm.pas

📁 一个小程序
💻 PAS
字号:
unit uDm;

interface

uses         
  SysUtils, Classes, MemDS,Controls,Forms, DBAccess, Ora, DB, ADODB;

type
  TDmEl = class(TDataModule)
    orsn1: TOraSession;
    ado1: TADOConnection;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  DmEl: TDmEl;
//连接系统公用数据库,如果失败,就提示用户退出系统
function ConnectAdo:Boolean;

//连接网络数据库,如果失败,就提示用户退出系统  
function ConnectOra:Boolean;

implementation
uses
  uSysFunc,uDefine,uDbFuncPub;

{$R *.dfm}

//连接系统公用数据库,如果失败,就提示用户退出系统
function ConnectAdo:Boolean;
var
  lPathLm:string;
  Safer: TCursor;
  lE:Boolean;
const
   mystr1='Provider=%s;Data Provider=%s;Data Source=%s';
   myprovider='Msdatashape.1';
   mydataprovider='Microsoft.Jet.OLEDB.4.0';
begin
  Safer:=Screen.Cursor;
  Screen.Cursor:=crHourGlass;
  lE:=True;
  DmEl.ado1.Close;
  if not MyFileExists(gPath+'\','eldb.mdb') then
  begin
    CreateAccess(gPath+'\eldb.mdb','');
    lE:=False;
  end;

  lPathLm:=gPath+'\eldb.mdb';
  DmEl.Ado1.ConnectionString:=format(mystr1,[myprovider,mydataprovider,lPathLm]);

  try
    try
      DmEl.Ado1.Open;
      if not lE then
        begin
          //如果原来的文件不存在那么需要从新创建
          CreateElDb;
          Result:=True;
        end;
    except
      on e: Exception do
      begin
        Screen.Cursor:=Safer;
        Result:=False;
        ErrorMsgBox('不能连接本地数据库'+#13#10+'程序无法继续运行!');
        halt;//中断程序运行
      end;
    end;
  finally 
    Screen.Cursor:=Safer;
  end;
  
end;

//连接网络数据库,如果失败,就提示用户退出系统
function ConnectOra:Boolean;
var
  Safer: TCursor;
begin               
  Safer:=Screen.Cursor;
  Screen.Cursor:=crHourGlass;

  DmEl.Orsn1.Disconnect;
  DmEl.Orsn1.AutoCommit:=False;
  DmEl.Orsn1.Server    :=gServerIP+':'+gServerPort+':'+gServerAlias;   
  DmEl.Orsn1.Username  :=gDbuserID;
  DmEl.Orsn1.Password  :=gDbPassWd;
  DmEl.Orsn1.Options.Direct:=True;
  try
    try
      DmEl.Orsn1.Connect;
      Result:=True;
    except
      on e:Exception do
      begin      
        Result:=False;
        ErrorMsgBox('连接网络数据库'+e.Message);
      end;
    end;
  finally
    Screen.Cursor:=Safer;
  end;

end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -