myddas fixes

This commit is contained in:
Vitor Santos Costa 2015-02-11 10:33:35 +00:00
parent afd8c9b9c4
commit eef8bc8629
4 changed files with 29 additions and 11 deletions

View File

@ -60,8 +60,14 @@ void Yap_InitMYDDAS_ODBCPreds(void);
void Yap_InitBackMYDDAS_ODBCPreds(void);
#endif
/* myddas_shared.c */
#if defined MYDDAS_ODBC || defined MYDDAS_MYSQL
/* myddas_odbc.c */
#if defined MYDDAS_SQLITE3
void Yap_InitMYDDAS_SQLITE3Preds(void);
void Yap_InitBackMYDDAS_SQLITE3Preds(void);
#endif
/* Myddas_shared.c */
#if defined USE_MYDDAS
void Yap_MYDDAS_delete_all_myddas_structs(void);
void Yap_InitMYDDAS_SharedPreds(void);
void Yap_InitBackMYDDAS_SharedPreds(void);

View File

@ -707,7 +707,10 @@ init_myddas(void)
#if defined MYDDAS_ODBC
Yap_InitBackMYDDAS_ODBCPreds();
#endif
#if defined MYDDAS_ODBC || defined MYDDAS_MYSQL
#if defined MYDDAS_SQLITE3
Yap_InitBackMYDDAS_SQLITE3Preds();
#endif
#if defined USE_MYDDAS
Yap_InitBackMYDDAS_SharedPreds();
#endif
#if defined MYDDAS_MYSQL
@ -716,7 +719,10 @@ init_myddas(void)
#if defined MYDDAS_ODBC
Yap_InitMYDDAS_ODBCPreds();
#endif
#if defined MYDDAS_ODBC || defined MYDDAS_MYSQL
#if defined MYDDAS_SQLITE3
Yap_InitMYDDAS_SQLITE3Preds();
#endif
#if defined USE_MYDDAS
Yap_InitMYDDAS_SharedPreds();
#endif
#if defined MYDDAS_TOP_LEVEL && defined MYDDAS_MYSQL // && defined HAVE_LIBREADLINE

View File

@ -65,8 +65,8 @@ typedef struct result_set {
int length;
} resultSet;
void Yap_InitMYDDAS_SQLitePreds(void);
void Yap_InitBackMYDDAS_sqlite3Preds(void);
void Yap_InitMYDDAS_SQLITE3Preds(void);
void Yap_InitBackMYDDAS_SQLITE3Preds(void);
static Int c_sqlite3_connect( USES_REGS1 );
@ -82,10 +82,10 @@ static Int c_sqlite3_get_next_result_set( USES_REGS1 );
static Int c_sqlite3_get_database( USES_REGS1 );
static Int c_sqlite3_change_database( USES_REGS1 );
void Yap_InitMYDDAS_SQLitePreds(void)
void Yap_InitMYDDAS_SQLITE3Preds(void)
{
/* db_dbect: Host x User x Passwd x Database x dbection x ERROR_CODE */
Yap_InitCPred("c_sqlite3_connect", 7, c_sqlite3_connect, 0);
Yap_InitCPred("c_db_sqlite3_connect", 4, c_sqlite3_connect, 0);
/* db_number_of_fields: Relation x connection x NumberOfFields */
Yap_InitCPred("c_sqlite3_number_of_fields",3, c_sqlite3_number_of_fields, 0);
@ -116,7 +116,7 @@ void Yap_InitMYDDAS_SQLitePreds(void)
}
void Yap_InitBackMYDDAS_sqlite3Preds(void)
void Yap_InitBackMYDDAS_SQLITE3Preds(void)
{
/* db_row: ResultSet x Arity x ListOfArgs */
Yap_InitCPredBackCut("c_sqlite3_row", 3, sizeof(Int),
@ -130,7 +130,7 @@ static Int
c_sqlite3_connect( USES_REGS1 ) {
Term arg_file = Deref(ARG1);
Term arg_db = ARG2;
Term arg_db = ARG4;
MYDDAS_UTIL_CONNECTION new = NULL;
sqlite3 *db;

View File

@ -15,7 +15,7 @@
* *
*************************************************************************/
#if defined MYDDAS_MYSQL || defined MYDDAS_ODBC
#if USE_MYDDAS
:- load_foreign_files([myddas], [], init_myddas).
@ -890,6 +890,12 @@ db_open(odbc,Connection,ODBCEntry,User,Password) :-
c_db_odbc_connect(ODBCEntry,User,Password,Con),
set_value(Connection,Con).
#endif
#ifdef MYDDAS_SQLITE3
db_open(sqlite3,Connection,ODBCEntry,User,Password) :-
'$error_checks'(db_open(odbc,Connection,ODBCEntry,User,Password)),
c_db_sqlite3_connect(ODBCEntry,User,Password,Con),
set_value(Connection,Con).
#endif
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%