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

📄 mysqldataset.hpp

📁 MYSQL 连接控件 MYSQL 连接控件
💻 HPP
📖 第 1 页 / 共 2 页
字号:
	bool __fastcall StoreContraints(void);
	bool __fastcall StoreCustomFieldDefs(void);
	bool __fastcall StoreFieldDefs(void);
	bool __fastcall StoreIndexDefs(void);
	bool __fastcall StoreMacroDel(void);
	bool __fastcall StoreMacros(void);
	bool __fastcall StoreSQL(void);
	bool __fastcall StoreSQLBatch(void);
	bool __fastcall StoreSQLDelete(void);
	bool __fastcall StoreSQLInsert(void);
	bool __fastcall StoreSQLUpdate(void);
	virtual void __fastcall DefineProperties(Classes::TFiler* Filer);
	virtual void __fastcall PSEndTransaction(bool Commit);
	virtual void __fastcall PSExecute(void);
	virtual int __fastcall PSExecuteStatement(const AnsiString ASQL, Db::TParams* AParams, void * ResultSet = (void *)(0x0));
	virtual void __fastcall PSGetAttributes(Classes::TList* List);
	virtual Db::TIndexDefs* __fastcall PSGetIndexDefs(Db::TIndexOptions IndexTypes);
	virtual Db::TIndexDef* __fastcall PSGetDefaultOrder(void);
	virtual AnsiString __fastcall PSGetKeyFields();
	virtual Db::TParams* __fastcall PSGetParams(void);
	virtual AnsiString __fastcall PSGetQuoteChar();
	virtual AnsiString __fastcall PSGetTableName();
	virtual Db::EUpdateError* __fastcall PSGetUpdateException(Sysutils::Exception* E, Db::EUpdateError* Prev);
	virtual bool __fastcall PSInTransaction(void);
	virtual bool __fastcall PSIsSQLBased(void);
	virtual bool __fastcall PSIsSQLSupported(void);
	virtual void __fastcall PSReset(void);
	virtual void __fastcall PSSetParams(Db::TParams* AParams);
	virtual void __fastcall PSSetCommandText(const AnsiString CommandText);
	virtual void __fastcall PSStartTransaction(void);
	virtual bool __fastcall PSUpdateRecord(Db::TUpdateKind UpdateKind, Db::TDataSet* Delta);
	
public:
	__fastcall virtual TMySQLDatasetBase(Classes::TComponent* AOwner);
	__fastcall virtual ~TMySQLDatasetBase(void);
	void __fastcall Execute(const bool WaitFor = false);
	AnsiString __fastcall CreateTable(const bool AExecSQL = false);
	virtual Db::TDataSource* __fastcall GetDataSource(void);
	void __fastcall SetDataSource(Db::TDataSource* Value);
	AnsiString __fastcall GetMasterFields();
	void __fastcall SetMasterFields(const AnsiString Value);
	void __fastcall SetTableName(AnsiString Value);
	bool __fastcall GetRawFieldData(Db::TField* Field, void * Buffer);
	virtual bool __fastcall GetFieldData(Db::TField* Field, void * Buffer)/* overload */;
	void __fastcall ConnectEvent(System::TObject* Sender, bool Connecting);
	bool __fastcall ExecSQL(AnsiString SQL = "", bool EnableMacros = false, bool Cached = false, const AnsiString ADB = "", const AnsiString ATable = "");
	bool __fastcall ExecSQLBatch(Classes::TStrings* SQL, const bool EnableMacros = false, const bool Cached = false, const bool AutoRefresh = false, const AnsiString ADB = "", const AnsiString ATable = "");
	bool __fastcall ExecSQLBatchPerColumn(Classes::TStrings* SQL, const bool EnableMacros = false, const bool Cached = false, const bool AutoRefresh = false, const bool AChanged = false);
	bool __fastcall ExecBatch(void);
	AnsiString __fastcall EscStr(const AnsiString S);
	AnsiString __fastcall QuoteStr(const AnsiString S);
	AnsiString __fastcall QEscStr(const AnsiString S);
	AnsiString __fastcall QEscFieldValue(Db::TField* Field = (Db::TField*)(0x0), char * RecBuf = (void *)(0x0));
	AnsiString __fastcall FormatIdentifier(const AnsiString S);
	AnsiString __fastcall HexStr(char * S, int L = 0x0);
	Db::TParam* __fastcall MacroByName(const AnsiString Value);
	Db::TParam* __fastcall ParamByName(const AnsiString Value);
	void __fastcall ClearMacros(void);
	void __fastcall ParseSQL(AnsiString SQL);
	AnsiString __fastcall GetMacroValue(AnsiString Name, const AnsiString ADB = "", const AnsiString ATable = "");
	virtual bool __fastcall BookmarkValid(void * Bookmark);
	virtual int __fastcall CompareBookmarks(void * Bookmark1, void * Bookmark2);
	virtual Classes::TStream* __fastcall CreateBlobStream(Db::TField* Field, Db::TBlobStreamMode Mode);
	bool __fastcall LocateRecord(const AnsiString KeyFields, const Variant &KeyValues, Db::TLocateOptions Options = (System::Set<Db::TLocateOption, loCaseInsensitive, loPartialKey> () << Db::TLocateOption(0) ), bool SyncCursor = true);
	bool __fastcall LocateRecordOption(const AnsiString KeyFields, const Variant &KeyValues, Db::TLocateOptions Options, bool SyncCursor, TMySQLLocateOptions MySQLOptions, Db::TField* &MatchedField);
	virtual bool __fastcall Locate(const AnsiString KeyFields, const Variant &KeyValues, Db::TLocateOptions Options);
	virtual Variant __fastcall Lookup(const AnsiString KeyFields, const Variant &KeyValues, const AnsiString ResultFields);
	__property void * Connection = {read=FConnection};
	__property Word MacroCount = {read=GetMacroCount, nodefault};
	__property bool InTransaction = {read=FInTransaction, write=FInTransaction, default=0};
	__property PRecInfo Records[int Index] = {read=GetIndexRecord};
	__property Classes::TStringList* MySQLDatabases = {read=FDBInfo};
	__property Classes::TStringList* MySQLTables = {read=FTableInfo};
	__property Classes::TStringList* MySQLFields = {read=FFieldInfo};
	__property Classes::TList* MySQLRecords = {read=FRecInfo};
	__property AnsiString PrimaryKeyFields = {read=FPrimFields};
	__property AnsiString UniqueKeyFields = {read=FUniqFields};
	__property AnsiString MultiKeyFields = {read=FMultFields};
	__property AnsiString LastInsertID = {read=FLastInsertID};
	__property AnsiString AffectedRows = {read=FAffectedRows};
	__property AnsiString QueryInfo = {read=FQueryInfo};
	__property AnsiString RealSQL = {read=FRealSQL};
	__property AnsiString ResultSQL = {read=FResultSQL};
	__property Buffers ;
	__property BufferCount ;
	__property ActiveRecord ;
	__property CurrentRecord ;
	__property char * CurrentBuffer = {read=FTempRec};
	__property bool CachedUpdates = {read=GetCachedUpdates, write=SetCachedUpdates, default=0};
	__property Db::TCheckConstraints* Constraints = {read=FConstraints, write=FConstraints, stored=StoreContraints};
	__property Controls::TCursor Cursor = {read=FCursor, write=FCursor, default=-17};
	__property Db::TFieldDefs* CustomFieldDefs = {read=FCustomFieldDefs, write=FCustomFieldDefs, stored=StoreCustomFieldDefs};
	__property Db::TIndexDefs* IndexDefs = {read=FIndexDefs, write=FIndexDefs, stored=StoreIndexDefs};
	__property AnsiString IndexFieldNames = {read=FFieldName, write=SetFieldName};
	__property AnsiString MacroDel = {read=GetMacroString, write=SetMacroString, stored=StoreMacroDel};
	__property Db::TParams* Macros = {read=FMacros, write=SetMacros, stored=StoreMacros};
	__property AnsiString MasterFields = {read=GetMasterFields, write=SetMasterFields};
	__property Db::TDataSource* MasterSource = {read=GetDataSource, write=SetDataSource};
	__property TMySQLDatasetOptions Options = {read=GetOptions, write=SetOptions, default=538625};
	__property bool ParamCheck = {read=GetParamCheck, write=SetParamCheck, default=1};
	__property Db::TParams* Params = {read=FMacros, write=SetMacros, stored=StoreMacros};
	__property bool RawData = {read=GetRawData, write=SetRawData, default=0};
	__property bool ReadOnly = {read=FReadOnly, write=SetReadOnly, default=0};
	__property TMySQLResultOptions ResultType = {read=FResultType, write=SetResultType, default=0};
	__property bool ShareConnection = {read=GetShareConnection, write=SetShareConnection, default=1};
	__property Classes::TStrings* SQL = {read=FSQL, write=SetSQL, stored=StoreSQL};
	__property Classes::TStrings* SQLBatch = {read=FSQLBatch, write=SetSQLBatch, stored=StoreSQLBatch};
	__property Classes::TStrings* SQLCached = {read=FSQLCached, write=SetSQLCached};
	__property Classes::TStrings* SQLDelete = {read=FSQLDelete, write=SetSQLDelete, stored=StoreSQLDelete};
	__property Classes::TStrings* SQLInsert = {read=FSQLInsert, write=SetSQLInsert, stored=StoreSQLInsert};
	__property Classes::TStrings* SQLUpdate = {read=FSQLUpdate, write=SetSQLUpdate, stored=StoreSQLUpdate};
	__property AnsiString TableName = {read=FTableName, write=SetTableName};
	__property bool UseCursor = {read=GetUseCursor, write=SetUseCursor, default=1};
	__property int MemoToStrLimit = {read=FMemoToStrLimit, write=FMemoToStrLimit, nodefault};
	__property TMySQLEvent OnExecSQL = {read=FOnExecSQL, write=FOnExecSQL};
	__property TMySQLMacroEvent OnMacro = {read=FOnMacro, write=FOnMacro};
	__property TMySQLFieldValue OnCustomValue = {read=FOnCustomValue, write=FOnCustomValue};
	__property TMySQLFieldValue OnDefaultValue = {read=FOnDefaultValue, write=FOnDefaultValue};
	__property Classes::TNotifyEvent OnThreadOpened = {read=FOnThreadOpened, write=FOnThreadOpened};
	__property Classes::TNotifyEvent OnThreadPosted = {read=FOnThreadPosted, write=FOnThreadPosted};
	__property Db::TDataSetNotifyEvent OnAfterAdd = {read=FOnAfterAdd, write=FOnAfterAdd};
	
__published:
	__property AnsiString DatabaseName = {read=FDatabaseName, write=SetDatabaseName};
	__property Mysqlserver::TMySQLServer* Server = {read=FServer, write=SetServer};
	
/* Hoisted overloads: */
	
protected:
	inline void __fastcall  SetFieldData(Db::TField* Field, void * Buffer, bool NativeFormat){ TDataSet::SetFieldData(Field, Buffer, NativeFormat); }
	
public:
	inline bool __fastcall  GetFieldData(int FieldNo, void * Buffer){ return TDataSet::GetFieldData(FieldNo, Buffer); }
	inline bool __fastcall  GetFieldData(Db::TField* Field, void * Buffer, bool NativeFormat){ return TDataSet::GetFieldData(Field, Buffer, NativeFormat); }
	
};


class DELPHICLASS TMySQLDataset;
class PASCALIMPLEMENTATION TMySQLDataset : public TMySQLDatasetBase 
{
	typedef TMySQLDatasetBase inherited;
	
__published:
	__property Active  = {default=0};
	__property CachedUpdates  = {default=0};
	__property Constraints ;
	__property Cursor  = {default=-17};
	__property CustomFieldDefs  = {stored=StoreCustomFieldDefs};
	__property FieldDefs  = {stored=StoreFieldDefs};
	__property Filter ;
	__property Filtered  = {default=0};
	__property AnsiString FieldName = {read=FFieldName, write=SetFieldName};
	__property IndexDefs  = {stored=StoreIndexDefs};
	__property MacroDel ;
	__property Macros ;
	__property MasterFields ;
	__property MasterSource ;
	__property Options  = {default=538625};
	__property ParamCheck  = {default=1};
	__property RawData  = {default=0};
	__property ReadOnly  = {default=0};
	__property ResultType  = {default=0};
	__property ShareConnection  = {default=1};
	__property SQL ;
	__property SQLBatch ;
	__property SQLCached ;
	__property SQLDelete ;
	__property SQLInsert ;
	__property SQLUpdate ;
	__property TableName ;
	__property UseCursor  = {default=1};
	__property OnAfterAdd ;
	__property OnExecSQL ;
	__property OnMacro ;
	__property OnCustomValue ;
	__property OnDefaultValue ;
	__property OnThreadOpened ;
	__property OnThreadPosted ;
	__property BeforeOpen ;
	__property AfterOpen ;
	__property BeforeClose ;
	__property AfterClose ;
	__property BeforeInsert ;
	__property AfterInsert ;
	__property BeforeEdit ;
	__property AfterEdit ;
	__property BeforePost ;
	__property AfterPost ;
	__property BeforeCancel ;
	__property AfterCancel ;
	__property BeforeDelete ;
	__property AfterDelete ;
	__property BeforeScroll ;
	__property AfterScroll ;
	__property BeforeRefresh ;
	__property AfterRefresh ;
	__property OnCalcFields ;
	__property OnDeleteError ;
	__property OnEditError ;
	__property OnNewRecord ;
	__property OnPostError ;
public:
	#pragma option push -w-inl
	/* TMySQLDatasetBase.Create */ inline __fastcall virtual TMySQLDataset(Classes::TComponent* AOwner) : TMySQLDatasetBase(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TMySQLDatasetBase.Destroy */ inline __fastcall virtual ~TMySQLDataset(void) { }
	#pragma option pop
	
};


class DELPHICLASS TMySQLTable;
class PASCALIMPLEMENTATION TMySQLTable : public TMySQLDatasetBase 
{
	typedef TMySQLDatasetBase inherited;
	
public:
	__fastcall virtual TMySQLTable(Classes::TComponent* AOwner);
	
__published:
	__property Active  = {default=0};
	__property CachedUpdates  = {default=0};
	__property Constraints ;
	__property FieldDefs  = {stored=StoreFieldDefs};
	__property Filter ;
	__property Filtered  = {default=0};
	__property IndexDefs  = {stored=StoreIndexDefs};
	__property IndexFieldNames ;
	__property MasterFields ;
	__property MasterSource ;
	__property ReadOnly  = {default=0};
	__property TableName ;
	__property Options  = {default=540161};
	__property OnAfterAdd ;
	__property OnExecSQL ;
	__property OnMacro ;
	__property OnDefaultValue ;
	__property OnThreadOpened ;
	__property OnThreadPosted ;
	__property BeforeOpen ;
	__property AfterOpen ;
	__property BeforeClose ;
	__property AfterClose ;
	__property BeforeInsert ;
	__property AfterInsert ;
	__property BeforeEdit ;
	__property AfterEdit ;
	__property BeforePost ;
	__property AfterPost ;
	__property BeforeCancel ;
	__property AfterCancel ;
	__property BeforeDelete ;
	__property AfterDelete ;
	__property BeforeScroll ;
	__property AfterScroll ;
	__property BeforeRefresh ;
	__property AfterRefresh ;
	__property OnCalcFields ;
	__property OnDeleteError ;
	__property OnEditError ;
	__property OnNewRecord ;
	__property OnPostError ;
public:
	#pragma option push -w-inl
	/* TMySQLDatasetBase.Destroy */ inline __fastcall virtual ~TMySQLTable(void) { }
	#pragma option pop
	
};


class DELPHICLASS TMySQLQuery;
class PASCALIMPLEMENTATION TMySQLQuery : public TMySQLDatasetBase 
{
	typedef TMySQLDatasetBase inherited;
	
__published:
	__property Active  = {default=0};
	__property CachedUpdates  = {default=0};
	__property Constraints ;
	__property Db::TDataSource* DataSource = {read=GetDataSource, write=SetDataSource};
	__property Filter ;
	__property Filtered  = {default=0};
	__property Options  = {default=538625};
	__property ParamCheck  = {default=1};
	__property AnsiString ParamDelimiters = {read=GetMacroString, write=SetMacroString, stored=StoreMacroDel};
	__property Params ;
	__property ResultType  = {default=0};
	__property SQL ;
	__property SQLDelete ;
	__property SQLInsert ;
	__property SQLUpdate ;
	__property ReadOnly  = {default=0};
	__property TableName ;
	__property OnAfterAdd ;
	__property OnExecSQL ;
	__property OnMacro ;
	__property OnDefaultValue ;
	__property OnThreadOpened ;
	__property OnThreadPosted ;
	__property BeforeOpen ;
	__property AfterOpen ;
	__property BeforeClose ;
	__property AfterClose ;
	__property BeforeInsert ;
	__property AfterInsert ;
	__property BeforeEdit ;
	__property AfterEdit ;
	__property BeforePost ;
	__property AfterPost ;
	__property BeforeCancel ;
	__property AfterCancel ;
	__property BeforeDelete ;
	__property AfterDelete ;
	__property BeforeScroll ;
	__property AfterScroll ;
	__property BeforeRefresh ;
	__property AfterRefresh ;
	__property OnCalcFields ;
	__property OnDeleteError ;
	__property OnEditError ;
	__property OnNewRecord ;
	__property OnPostError ;
public:
	#pragma option push -w-inl
	/* TMySQLDatasetBase.Create */ inline __fastcall virtual TMySQLQuery(Classes::TComponent* AOwner) : TMySQLDatasetBase(AOwner) { }
	#pragma option pop
	#pragma option push -w-inl
	/* TMySQLDatasetBase.Destroy */ inline __fastcall virtual ~TMySQLQuery(void) { }
	#pragma option pop
	
};


//-- var, const, procedure ---------------------------------------------------
#define DefaultMacroString "[,]"
extern PACKAGE TMetaClass*DefaultFieldClasses[38];

}	/* namespace Mysqldataset */
using namespace Mysqldataset;
#pragma option pop	// -w-
#pragma option pop	// -Vx

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// MySQLDataset

⌨️ 快捷键说明

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