Red de conocimiento informático - Material del sitio web - Cómo utilizar tablas en memoria para procesar campos de blobs

Cómo utilizar tablas en memoria para procesar campos de blobs

Instrucciones para usar tablas de memoria

1.1 Pasos para crear una tabla de memoria en Delphi:

1.

2. Establezca DataBaseName como un alias para un directorio o base de datos existente.

3. Especifique el valor de TableName.

4. Establezca la propiedad TableType para especificar el tipo de tabla de base de datos que se creará. (Si este atributo es ttDefault, significa que el tipo de base de datos corresponde a la extensión del valor especificado por TableName).

5. Llame al método Add del objeto TTable.FidldDefs para agregar campos a la tabla de la base de datos. Agregar tiene cuatro parámetros:

FieldName: string.

FieldType: TfieldType.

FieldSize: Word. Generalmente solo se usa para tipos de cadenas y notas. Cómo utilizar.

Si el campo es NotNull: valor booleano.

6. Utilice el método TTable.IndexDefs.Add() para definir el índice. Add tiene tres parámetros:

IndexName: cadena;

IndexFieldName: cadena

IndexType: llama a CreateTable de TTable. Este método funciona en tablas locales, tablas SQL creadas con TQuery.

El código es el siguiente:

var

MemTable: TTable

comenzar

con MemTable. Crear(Self ) hacer

comenzar

Nombre de la base de datos := 'c:\Temp ';

Nombre de la tabla := 'Prueba '; >TableType:

con FieldDefs

comenzar

Add( 'Edad ', ftInteger, 0, True

Add(); 'Nombre ' , ftString, 25, False);

Add( 'Peso ', ftFloat, 0, False

end; ( ' ' , 'Edad ', [ixPrimary, ixUnique]);

CrearTabla

end; Uso de kbmMemTable Breve descripción

2.1 Pasos para crear kbmMemTable:

1.

2. Llame al método Add del objeto kbmMemTable.FidldDefs para agregar campos a la tabla de la base de datos. El método de adición es el mismo que el de Delphi.

3. Utilice el método kbmMemTable.IndexDefs.Add() para definir el índice. El método de suma es el mismo que el de Delphi.

4. Llame a CreateTable de kbmMemTable.

Diferencia importante: porque kbmMemTable no requiere soporte BDE.

Por lo tanto, no especifique las propiedades DatabaseName, TableName y TableType.

El código es el siguiente:

con kbmMemTable1

empieza

con kbmMemTable1.FieldDefs

comenzar

comenzar

p>

Borrar

Agregar ('Período', ftInteger, 0, falso

); Agregar( 'VALUE', ftLargeInt, 0, false);

Add( 'BytesField', ftBytes, 20, false

Add( 'Color', ftInteger, 0, falso);

Agregar( 'Fecha', ftDate, 0, falso

Agregar( 'Memo', ftMemo, 0, falso

); Add( 'AutoInc', ftAutoInc, 0, false);

end

con kbmMemTable1.IndexDefs

comienza

Borrar ;

Agregar( 'Índice1 ', 'VALOR ', []);

fin

CrearTabla

fin; /p>

end.

3.1 Función de tabla maestro-esclavo

kbmMemTable se puede usar como otros TDataSets y las operaciones de tabla maestro-esclavo se pueden completar configurando MasterSource y MasterField.

3.2 Funcionalidad SQL

No se encontró que kbmMemTable sea compatible con SQL. Proporciona clasificación de campos y búsquedas en campos ordenados.

III. Función de kbmMemTable

Obtener datos de otros TDataSet.

El código es el siguiente:

LoadFromDataSet(Table1, [mtcpoStructure, mtcpoProperties]);

De esta manera, kbmMemTable puede obtener completamente todos los datos de un Objeto conjunto de datos.

Funciones para guardar y cargar datos desde tablas de memoria

TTable de Delphi no proporciona la función SaveToFile.

kbmMemTable proporciona la función SaveToFile y los archivos guardados tienen dos formatos:

Opciones: TkbmMemTable.SaveFlags

1.kbmMemTable.SaveToBinaryFile( 'c: \test .bin', Opciones).

kbmMemTable1.LoadFromBinaryFile( 'c:\test.bin ')

2.

kbmMemTable.SaveToFile( 'c:\test.csv ', Opciones);

kbmMemTable1.LoadFromFile( 'c:\test.csv ')

(Formatos de documentos compatibles con Excel) El método de apertura es el siguiente:

@@FILE VERSION@@ 200

@@TABLEDEF START@@

Period=Integer, 0, "Period " , " " , 10

VALUE=LargeInt, 0, "VALUE ", ", 15

BytesField=Bytes, 20, "BytesField ", "", 10

Color= Entero, 0, "Color ", "", 10

Fecha=Fecha, 0, "Fecha ", "", 10

Memo=Memo, 0 , "Memo ", " ", 10

AutoInc=AutoInc, 0, "AutoInc ", " ", 10

CALC=String, 20, "CALC ", " ", 20

@@TABLEDEF END@@

Período VALOR BytesCampo Color Fecha Memo AutoInc CALC

1 198 0 02/11/2001 Este es un memon2001-11-2 10: 19:52 1 0 enero-febrero

2 196 3 11/03/2001 Este es un memo n2001-11-2 10:19:52 2 1 febrero-marzo

Documento El encabezado describe la estructura de los campos de la tabla y debajo está el área de datos

.