Files
Common-VS2019/SacsStandardBase/Base/Dbas/IDbDataItem.cs
T
2021-05-05 15:36:28 +01:00

55 lines
2.5 KiB
C#

using Sarand.Net.Standard.Base.Dbas;
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Text;
namespace Sarand.Net.Standard.Base.Dbas
{
//=======================================================================
/// <summary>
/// Database information - object supplied by main application.
/// <para>NB Application may deploy to databases with schema differences.</para>
/// <para>Each instance of a DbDataItem must be database specific, ie. must be able to distinguish the schema in use.</para>
/// </summary>
public interface IDatabaseInfo
{
String Context { get; }
bool TableExists(String schemaName, String tableName);
bool ColumnExists(String schemaName, String tableName, String columnName);
List<DbDfnColumn> GetColumnsForTable(String schemaName, String tableName);
}
//=======================================================================
public interface IDbDataItem
{
//-------------------------------------------------------------------
// Population.
void PopulateFrom (DbCommand dbCommand, String tableAlias, String filter);
void PopulateFrom (DbDataReader dbdataReader);
//-------------------------------------------------------------------
// Retrieve field values.
String GetFieldString (DbDataReader dbDataReader, String name, String defaultValue);
Boolean GetFieldBoolean (DbDataReader dbDataReader, String name, Boolean defaultValue);
Int16 GetFieldInt16 (DbDataReader dbDataReader, String name, Int16 defaultValue);
Byte GetFieldByte (DbDataReader dbDataReader, String name, Byte defaultValue);
Int32 GetFieldInt32 (DbDataReader dbDataReader, String name, Int32 defaultValue);
Int64 GetFieldInt64 (DbDataReader dbDataReader, String name, Int64 defaultValue);
Single GetFieldSingle (DbDataReader dbDataReader, String name, Single defaultValue);
Double GetFieldDouble (DbDataReader dbDataReader, String name, Double defaultValue);
Decimal GetFieldDecimal (DbDataReader dbDataReader, String name, Decimal defaultValue);
DateTime GetFieldDateTime (DbDataReader dbDataReader, String name, DateTime defaultValue);
//-------------------------------------------------------------------
// Database updates via ODBC Command.
bool ExecuteInsertCommand (DbCommand dbCommand);
bool ExecuteUpdateCommand (DbCommand dbCommand);
//bool ExecuteDeleteCommand (DbCommand dbCommand);
//-------------------------------------------------------------------
}
//=======================================================================
}