1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121
|
/**
* chewing-sql.c
*
* Copyright (c) 2013
* libchewing Core Team. See ChangeLog for details.
*
* See the file "COPYING" for information on usage and redistribution
* of this file.
*/
/* *INDENT-OFF* */
#ifndef CHEWING_SQL_H
#define CHEWING_SQL_H
/* *INDENT-ON* */
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
/*
* userphrase_v1 table
*/
enum {
BIND_USERPHRASE_TIME = 1,
BIND_USERPHRASE_ORIG_FREQ = 2,
BIND_USERPHRASE_MAX_FREQ = 3,
BIND_USERPHRASE_USER_FREQ = 4,
BIND_USERPHRASE_LENGTH = 5,
BIND_USERPHRASE_PHRASE = 6,
BIND_USERPHRASE_PHONE_0 = 10,
BIND_USERPHRASE_PHONE_1 = 11,
BIND_USERPHRASE_PHONE_2 = 12,
BIND_USERPHRASE_PHONE_3 = 13,
BIND_USERPHRASE_PHONE_4 = 14,
BIND_USERPHRASE_PHONE_5 = 15,
BIND_USERPHRASE_PHONE_6 = 16,
BIND_USERPHRASE_PHONE_7 = 17,
BIND_USERPHRASE_PHONE_8 = 18,
BIND_USERPHRASE_PHONE_9 = 19,
BIND_USERPHRASE_PHONE_10 = 20,
};
enum {
COLUMN_USERPHRASE_TIME,
COLUMN_USERPHRASE_ORIG_FREQ,
COLUMN_USERPHRASE_MAX_FREQ,
COLUMN_USERPHRASE_USER_FREQ,
COLUMN_USERPHRASE_LENGTH,
COLUMN_USERPHRASE_PHRASE,
COLUMN_USERPHRASE_PHONE_0,
COLUMN_USERPHRASE_PHONE_1,
COLUMN_USERPHRASE_PHONE_2,
COLUMN_USERPHRASE_PHONE_3,
COLUMN_USERPHRASE_PHONE_4,
COLUMN_USERPHRASE_PHONE_5,
COLUMN_USERPHRASE_PHONE_6,
COLUMN_USERPHRASE_PHONE_7,
COLUMN_USERPHRASE_PHONE_8,
COLUMN_USERPHRASE_PHONE_9,
COLUMN_USERPHRASE_PHONE_10,
COLUMN_USERPHRASE_COUNT,
};
enum {
STMT_USERPHRASE_SELECT,
STMT_USERPHRASE_SELECT_BY_PHONE,
STMT_USERPHRASE_SELECT_BY_PHONE_PHRASE,
STMT_USERPHRASE_UPSERT,
STMT_USERPHRASE_DELETE,
STMT_USERPHRASE_GET_MAX_FREQ,
STMT_USERPHRASE_COUNT,
};
typedef struct SqlStmtUserphrase_ {
const char *stmt;
const char column[COLUMN_USERPHRASE_COUNT];
} SqlStmtUserphrase;
/*
* config_v1 table
*/
enum {
BIND_CONFIG_ID = 1,
BIND_CONFIG_VALUE = 2,
};
enum {
COLUMN_CONFIG_ID,
COLUMN_CONFIG_VALUE,
COLUMN_CONFIG_COUNT,
};
enum {
STMT_CONFIG_SELECT,
STMT_CONFIG_INSERT,
STMT_CONFIG_INCREASE,
STMT_CONFIG_COUNT,
};
enum {
CONFIG_ID_LIFETIME,
};
typedef struct SqlStmtConfig_ {
const char *stmt;
const char column[COLUMN_CONFIG_COUNT];
} SqlStmtConfig;
extern const SqlStmtUserphrase SQL_STMT_USERPHRASE[STMT_USERPHRASE_COUNT];
struct ChewingData;
int InitUserphrase(struct ChewingData *pgdata, const char *path);
void TerminateUserphrase(struct ChewingData *pgdata);
/* *INDENT-OFF* */
#endif
/* *INDENT-ON* */
|