C API数据类型
MYSQL
:- 该结构代表一个数据库连接的句柄。
MYSQL_RES
:- 该结构代表返回行的查询结果。(SELECT,SHOW,DESCRIBE,EXPLAIN)。
- 将查询返回的信息成为“结果集”。
MYSQL_ROW
:- 这是一行数据的”类型安全“表示。
- 它目前是按照计数字节字符串的数组实施的。
- 如果字段值可能包含二进制数据,不能将其当做由NULL终结的字符串对待,这是因为这类值可能会包含NULL字节。
- 行是通过mysql_fetch_row()获得的。
MYSQL_FIELD
:该结构包含关于字段的信息,如字段名,类型和大小。
通过重复调用mysql_fetch_field(),可为每个字段获得MYSQL_FIELD结构。
字段值不是该结构的组成部份,它们包含在MYSQL_ROW结构中。
结构体:
struct MYSQL_FIELD { char *name;//字段名称,由NULL终结的字符串。如果用AS子句为该字段指定了别名,名称的值也是别名。 char *org_name;//段名称,由NULL终结的字符串,忽略别名。 char *table;//包含该字段的表的名称,如果该字段不是计算出的字段的话。对于计算出的字段,表值为空的字符串。如果用AS子句为该表指定了别名,表的值也是别名。 char *org_table;//表的名称,由Null终结的字符串。忽略别名。 char *db;//字段源自的数据的名称,由Null终结的字符串。如果该字段是计算出的字段,db为空的字符串。 char *catalog;//catalog名称。该值总是"def"。 char *def;//该字段的默认值,由Null终结的字符串。仅当使用mysql_list_fields()时才设置它。 ..... }
*
MYSQL_FIELD_OFFSET
:- 这时MySQL字段列表偏移量的“类型安全”表示(由mysql_filed_seek()使用)。
- 偏移量是行内的字段编号,从0开始。
my_ulonglong
:- 用于行数以及mysql_affected_rows(),mysql_num_rows()和mysql_insert_id()类型。
- 该类型提供的范围是0~1.84e19。
- 在某些系统上不能打印这个类型的值,要想打印,请换成
%lu
。