返回首页

gbase数据、南大通用产品文档:GBase8s使用外部表时的性能注意事项

更新日期:2024年09月11日

如果要使用 SQL 命令处理 ASCII 文件中的数据,或将数据从外部数据文件装入 RAW
数据库表,您可以使用外部表。
将信息装入数据库的方法有几种,包括:
 LOAD FROM ... INSERT INTO... DB-Access 命令
 dbimport 实用程序
 High-Performance Loader 实用程序
 外部表
High Performance Loader 实用程序可在将外部数据装入到带索引的数据库表时提供最佳性
能。
外部表可在将数据装入到不带索引的 RAW 表时提供最佳性能。
注: 装入数据前锁定外部表将提高装入性能

通过本功能您可以对会话信息进行管理,左侧树结构如下图所示:

GBaseDataStudio 管理工具手册
南大通用数据技术股份有限公司
- 231 -
图5- 607 会话管理左侧树
双击打开“会话”界面如下图所示:
图5- 608 会话信息列表
会话信息列表界面,上半部分显示所有会话信息列表,左下显示最新执行的
SQL,右下表显示会话的详细信息。
会话信息列表右键菜单,有“结束会话”

“终止查询”
、刷新等功能,如下图所

GBaseDataStudio 管理工具手册
- 232 -
南大通用数据技术股份有限公司
示:
图5- 609 会话信息列表右键菜单

bycopy() 函数将给定的字节数从一个位置复制到另一个。

语法
void bycopy(from, to, length)
char *from;
char *to;

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 614 -

mint length;
from
指向您想要 bycopy() 复制的该组字节的第一个字节的指针。
to
指向目的字节组的第一个字节的指针。
to 指向的内存区域可与 from 参数指向的区域
交叠。在此情况下,GBase 8s ESQL/C 不保留 from 指向的值。
length
您想要 bycopy() 复制的字节数。
重要: 请注意,不要重写目标区域相邻的内存区域。

示例
此示例程序位于 demo 目录中的 bycopy.ec 文件中。
/*
* bycopy.ec *

The following program shows the results of bycopy() for three copy operations.
*/

#include

char dest[20];

main()
{
mint number1 = 12345;
mint number2 = 0;
static char string1[] = "abcdef";
static char string2[] = "abcdefghijklmn";

printf("BYCOPY Sample ESQL Program running.\n\n");

printf("String 1=%s\tString 2=%s\n", string1, string2);
printf(" Copying String 1 to destination string:\n");

GBase 8s ESQL/C 编程指南
南大通用数据技术股份有限公司
- 615 -

bycopy(string1, dest, strlen(string1));
printf(" Result = %s\n\n", dest);

printf(" Copying String 2 to destination string:\n");
bycopy(string2, dest, strlen(string2));
printf(" Result = %s\n\n", dest);

printf("Number 1=%d\tNumber 2=%d\n", number1, number2);
printf(" Copying Number 1 to Number 2:\n");
bycopy( (char *) &number1, (char *) &number2, sizeof(int));
printf(" Result = number1(hex) %08x, number2(hex) %08x\n",
number1, number2);

printf("\nBYCOPY Sample Program over.\n\n");
}
输出
BYCOPY Sample ESQL Program running.

String 1=abcdef String2=abcdefghijklmn
Copying String 1 to destination string:
Result = abcdef

Copying String 2 to destination string:
Result = abcdefghijklmn

Number 1=12345 Number2=0
Copying Number 1 to Number 2:
Result = number1(hex) 00003039, number2(hex) 00003039

BYCOPY Sample Program over.