4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Jayoun Lee <airjany@samsung.com>, Sewook Park <sewook7.park@samsung.com>, Jaeho Lee <jaeho81.lee@samsung.com>
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
31 #define AIL_SQL_QUERY_MAX_LEN 2048
37 typedef int (*sqlite_query_callback)(void *data, int ncols, char **coltxt, char **colname);
39 ail_error_e db_open(db_open_mode mode);
40 ail_error_e db_prepare(const char *query, sqlite3_stmt **stmt);
42 ail_error_e db_bind_bool(sqlite3_stmt *stmt, int idx, bool value);
43 ail_error_e db_bind_int(sqlite3_stmt *stmt, int idx, int value);
45 ail_error_e db_step(sqlite3_stmt *stmt);
47 ail_error_e db_column_bool(sqlite3_stmt *stmt, int index, bool *value);
48 ail_error_e db_column_int(sqlite3_stmt *stmt, int index, int *value);
49 ail_error_e db_column_str(sqlite3_stmt *stmt, int index, char **str);
51 ail_error_e db_reset(sqlite3_stmt *stmt);
52 ail_error_e db_finalize(sqlite3_stmt *stmt);
55 ail_error_e db_exec(const char *query);
56 ail_error_e db_close(void);
57 int db_exec_sqlite_query(char *query, sqlite_query_callback callback, void *data);