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

📄 sqldata.pas

📁 乐都SQL版传奇全套代码,绝对可编译
💻 PAS
字号:
unit SqlData;

interface

uses
  SysUtils, Classes, DB, Grobal2,ADODB;
const
   ConnectStr='Provider=SQLOLEDB.1;Password=%s;Persist Security Info=True;User ID=%s;Initial '+
                  'Catalog=%s;Data Source=%s;Use Procedure for Prepare=1;Auto Translate=True;Packet Size=4096;Workstation ID=LXH;Use Encryption for Data=False;Tag with column collation when possible=False';
type
  TDataModule_ID = class(TDataModule)
    ADOConnectionID: TADOConnection;
    ADOQueryID: TADOQuery;
    ADOStoredProc_ADDACCOUNT: TADOStoredProc;
    ADOStoredProc_UpDate: TADOStoredProc;
    ADOStoredProc_GETACCOUNT: TADOStoredProc;
  private
    { Private declarations }
  public
    function Get(Name:String;var DBRecord: TAccountDBRecord):Boolean;
    function UpDate(  DBRecord: TAccountDBRecord):Boolean;
    function Add(  DBRecord: TAccountDBRecord):Boolean;
  end;

var
  DataModule_ID                           : TDataModule_ID;

implementation

{$R *.dfm}

{ TDataModule_ID }

function TDataModule_ID.Add(DBRecord: TAccountDBRecord): Boolean;
var
  StrSql:String;

begin
  Result:=False;
  if not ADOConnectionID.Connected then Exit;
 //ADOStoredProc_ADDACCOUNT.Connection:=ADOConnectionID;

 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@ACCOUNT').Value:=DBRecord.UserEntry.sAccount;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@PASSWORD').Value:=DBRecord.UserEntry.sPassword;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@USERNAME').Value:=DBRecord.UserEntry.sUserName;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@IDCARD').Value:=DBRecord.UserEntry.sSSNo;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@PHONENUMBER').Value:=DBRecord.UserEntry.sPhone;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@QUIZ1').Value:=DBRecord.UserEntry.sQuiz;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@ANSWER1').Value:=DBRecord.UserEntry.sAnswer;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@EMAIL').Value:=DBRecord.UserEntry.sEMail;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@QUIZ2').Value:=DBRecord.UserEntryAdd.sQuiz2;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@ANSWER2').Value:=DBRecord.UserEntryAdd.sAnswer2;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@BIRTHDAY').Value:=DBRecord.UserEntryAdd.sBirthDay;
 ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@MOBILE').Value:=DBRecord.UserEntryAdd.sMobilePhone;
 ADOStoredProc_ADDACCOUNT.Prepared:=True;
  Try

    ADOStoredProc_ADDACCOUNT.ExecProc;
    if  ADOStoredProc_ADDACCOUNT.Parameters.ParamByName('@RETURN_VALUE').Value=0 then
       Result:=True;
  Finally
  End;


end;

function TDataModule_ID.Get(Name:String;var DBRecord: TAccountDBRecord): Boolean;
begin
    Result:=False;
    if ADOConnectionID.Connected then
    Begin

     ADOStoredProc_GETACCOUNT.Parameters.ParamByName('@ACCOUNT').Value:=Name;
     ADOStoredProc_GETACCOUNT.Prepared:=TRUE;
     Try

       ADOStoredProc_GETACCOUNT.Active:=True;
         if ADOStoredProc_GETACCOUNT.RecordCount>0 then
         Begin
            DBRecord.UserEntry.sAccount:=ADOStoredProc_GETACCOUNT.Fields[0].AsString;
            DBRecord.UserEntry.sPassword:=ADOStoredProc_GETACCOUNT.Fields[1].AsString;
            DBRecord.nErrorCount:=ADOStoredProc_GETACCOUNT.Fields[2].AsInteger;
            DBRecord.dwActionTick:=ADOStoredProc_GETACCOUNT.Fields[3].AsInteger;
            ADOStoredProc_GETACCOUNT.Active:=FAlse;
            Result:=True;
         End;

       Finally
        ADOStoredProc_GETACCOUNT.Active:=False;
       End;
    End;

end;

function TDataModule_ID.UpDate( DBRecord: TAccountDBRecord): Boolean;
var
  sql:String;
begin
   Result:=False;
    if ADOConnectionID.Connected then
    Begin
       Try
       ADOStoredProc_UpDate.Parameters.ParamByName('@ACCOUNT').Value:=DBRecord.UserEntry.sAccount;
       ADOStoredProc_UpDate.Parameters.ParamByName('@PASSWORD').Value:=DBRecord.UserEntry.sPassword;
       ADOStoredProc_UpDate.Parameters.ParamByName('@ERRORCOUNT').Value:=DBRecord.nErrorCount;
       ADOStoredProc_UpDate.Parameters.ParamByName('@ACTIONTICK').Value:=DBRecord.dwActionTick;
       
       ADOStoredProc_UpDate.Prepared:=TRUE;
  
        Try
          ADOStoredProc_UpDate.ExecProc;
          if  ADOStoredProc_UpDate.Parameters.ParamByName('@RETURN_VALUE').Value=0 then
             Result:=True;
        Finally
        End;

       Finally
       End;
    End;

end;

end.

⌨️ 快捷键说明

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