falta libreria hbmysql

HMG en Español

Moderator: Rathinagiri

User avatar
joerg
Posts: 10
Joined: Tue Sep 25, 2012 4:08 pm
DBs Used: DBF; mySQL
Location: Austria
Contact:

Re: falta libreria hbmysql

Post by joerg »

Hi to all,

Lot's of thanks to jayadevu for providing the info on the SQLMIX Rdd interface.

I didn't look into it yet but it sounds promising to solve parts of my problem. I hope that the same C functions to query mySQL are available like from the current libmysql.dll - otherwise I'd have to change the code of my current database interface.

*****************************************************************************************************************************
The PERFECT SOLUTION to the problems discussed in this thread would be a new 64 bit only release of HMG which works with mySQL 8.0.23 by default ...
*****************************************************************************************************************************

64 bit is the future. There's no way around it ... like there was no way around moving from 16 to 32 bit a while ago.

mySQL is the future. There are many reasons why it is used as the database of choice for web applications all over the internet.

Regards,
Joerg
User avatar
serge_girard
Posts: 3161
Joined: Sun Nov 25, 2012 2:44 pm
DBs Used: 1 MySQL - MariaDB
2 DBF
Location: Belgium
Contact:

Re: falta libreria hbmysql

Post by serge_girard »

Joerg,

I agree !

Serge
There's nothing you can do that can't be done...
User avatar
salamandra
Posts: 311
Joined: Thu Jul 31, 2008 8:33 pm
DBs Used: DBF, MySQL, SQL
Location: Brazil

Re: falta libreria hbmysql

Post by salamandra »

Hi joerg ,
joerg wrote: Wed Mar 31, 2021 8:26 am Hi to all,

Lot's of thanks to jayadevu for providing the info on the SQLMIX Rdd interface.

I didn't look into it yet but it sounds promising to solve parts of my problem. I hope that the same C functions to query mySQL are available like from the current libmysql.dll - otherwise I'd have to change the code of my current database interface.

*****************************************************************************************************************************
The PERFECT SOLUTION to the problems discussed in this thread would be a new 64 bit only release of HMG which works with mySQL 8.0.23 by default ...
*****************************************************************************************************************************

64 bit is the future. There's no way around it ... like there was no way around moving from 16 to 32 bit a while ago.

mySQL is the future. There are many reasons why it is used as the database of choice for web applications all over the internet.

Regards,
Joerg

I agree too


Salamandra, Brazil
There is one time in which is crucial awakening. That time is now. ( Buddha )
User avatar
Ismach
Posts: 161
Joined: Wed Nov 28, 2012 5:55 pm
DBs Used: DBF, mySQL, Mariadb, postgreSQL, Oracle, Db2, Interbase, Firebird, and SQLite
Location: Buenos Aires - Argentina

Re: falta libreria hbmysql

Post by Ismach »

Si bien internamente se parecen, hay algunas diferencias,
personalmente creo que hay que agregar codigo y generar la libmariadb.a
Image
Attachments
Libmysql_vs_Libmariadb.png
Libmysql_vs_Libmariadb.png (59.66 KiB) Viewed 2046 times
User avatar
danielmaximiliano
Posts: 2611
Joined: Fri Apr 09, 2010 4:53 pm
Location: Argentina
Contact:

Re: falta libreria hbmysql

Post by danielmaximiliano »

para generar libmariadb.a es necesario estas herramientas : impdef.exe de Borland ( c:\borland\xxx\bin)
desde la linea de comandos tipear
C:\Program Files (x86)\MariaDB\MariaDB Connector C\lib>impdef libmariadb.def libmariadb.dll
nos generará la lista de nombre de las funciones de exportacion

Code: Select all

LIBRARY     LIBMARIADB.DLL

EXPORTS
    ma_pvio_register_callback      @1   ; ma_pvio_register_callback
    mariadb_cancel                 @2   ; mariadb_cancel
    mariadb_connection             @3   ; mariadb_connection
    mariadb_convert_string         @4   ; mariadb_convert_string
    mariadb_deinitialize_ssl       @5   ; mariadb_deinitialize_ssl
    mariadb_dyncol_check           @6   ; mariadb_dyncol_check
    mariadb_dyncol_column_cmp_named @7   ; mariadb_dyncol_column_cmp_named
    mariadb_dyncol_column_count    @8   ; mariadb_dyncol_column_count
    mariadb_dyncol_create_many_named @9   ; mariadb_dyncol_create_many_named
    mariadb_dyncol_create_many_num @10  ; mariadb_dyncol_create_many_num
    mariadb_dyncol_exists_named    @11  ; mariadb_dyncol_exists_named
    mariadb_dyncol_exists_num      @12  ; mariadb_dyncol_exists_num
    mariadb_dyncol_free            @13  ; mariadb_dyncol_free
    mariadb_dyncol_get_named       @14  ; mariadb_dyncol_get_named
    mariadb_dyncol_get_num         @15  ; mariadb_dyncol_get_num
    mariadb_dyncol_has_names       @16  ; mariadb_dyncol_has_names
    mariadb_dyncol_json            @17  ; mariadb_dyncol_json
    mariadb_dyncol_list_named      @18  ; mariadb_dyncol_list_named
    mariadb_dyncol_list_num        @19  ; mariadb_dyncol_list_num
    mariadb_dyncol_unpack          @20  ; mariadb_dyncol_unpack
    mariadb_dyncol_update_many_named @21  ; mariadb_dyncol_update_many_named
    mariadb_dyncol_update_many_num @22  ; mariadb_dyncol_update_many_num
    mariadb_dyncol_val_double      @23  ; mariadb_dyncol_val_double
    mariadb_dyncol_val_long        @24  ; mariadb_dyncol_val_long
    mariadb_dyncol_val_str         @25  ; mariadb_dyncol_val_str
    mariadb_field_attr             @26  ; mariadb_field_attr
    mariadb_free_rpl_event         @27  ; mariadb_free_rpl_event
    mariadb_get_charset_by_name    @28  ; mariadb_get_charset_by_name
    mariadb_get_charset_by_nr      @29  ; mariadb_get_charset_by_nr
    mariadb_get_info               @30  ; mariadb_get_info
    mariadb_get_infov              @31  ; mariadb_get_infov
    mariadb_reconnect              @32  ; mariadb_reconnect
    mariadb_rpl_close              @33  ; mariadb_rpl_close
    mariadb_rpl_fetch              @34  ; mariadb_rpl_fetch
    mariadb_rpl_get_optionsv       @35  ; mariadb_rpl_get_optionsv
    mariadb_rpl_open               @36  ; mariadb_rpl_open
    mariadb_rpl_optionsv           @37  ; mariadb_rpl_optionsv
    mariadb_stmt_execute_direct    @38  ; mariadb_stmt_execute_direct
    mariadb_stmt_fetch_fields      @39  ; mariadb_stmt_fetch_fields
    mysql_affected_rows            @40  ; mysql_affected_rows
    mysql_autocommit               @41  ; mysql_autocommit
    mysql_autocommit_cont          @42  ; mysql_autocommit_cont
    mysql_autocommit_start         @43  ; mysql_autocommit_start
    mysql_change_user              @44  ; mysql_change_user
    mysql_change_user_cont         @45  ; mysql_change_user_cont
    mysql_change_user_start        @46  ; mysql_change_user_start
    mysql_character_set_name       @47  ; mysql_character_set_name
    mysql_client_find_plugin       @48  ; mysql_client_find_plugin
    mysql_client_register_plugin   @49  ; mysql_client_register_plugin
    mysql_close                    @50  ; mysql_close
    mysql_close_cont               @51  ; mysql_close_cont
    mysql_close_start              @52  ; mysql_close_start
    mysql_commit                   @53  ; mysql_commit
    mysql_commit_cont              @54  ; mysql_commit_cont
    mysql_commit_start             @55  ; mysql_commit_start
    mysql_data_seek                @56  ; mysql_data_seek
    mysql_debug                    @57  ; mysql_debug
    mysql_dump_debug_info          @58  ; mysql_dump_debug_info
    mysql_dump_debug_info_cont     @59  ; mysql_dump_debug_info_cont
    mysql_dump_debug_info_start    @60  ; mysql_dump_debug_info_start
    mysql_embedded                 @61  ; mysql_embedded
    mysql_eof                      @62  ; mysql_eof
    mysql_errno                    @63  ; mysql_errno
    mysql_error                    @64  ; mysql_error
    mysql_escape_string            @65  ; mysql_escape_string
    mysql_fetch_field              @66  ; mysql_fetch_field
    mysql_fetch_field_direct       @67  ; mysql_fetch_field_direct
    mysql_fetch_fields             @68  ; mysql_fetch_fields
    mysql_fetch_lengths            @69  ; mysql_fetch_lengths
    mysql_fetch_row                @70  ; mysql_fetch_row
    mysql_fetch_row_cont           @71  ; mysql_fetch_row_cont
    mysql_fetch_row_start          @72  ; mysql_fetch_row_start
    mysql_field_count              @73  ; mysql_field_count
    mysql_field_seek               @74  ; mysql_field_seek
    mysql_field_tell               @75  ; mysql_field_tell
    mysql_free_result              @76  ; mysql_free_result
    mysql_free_result_cont         @77  ; mysql_free_result_cont
    mysql_free_result_start        @78  ; mysql_free_result_start
    mysql_get_character_set_info   @79  ; mysql_get_character_set_info
    mysql_get_charset_by_name      @80  ; mysql_get_charset_by_name
    mysql_get_charset_by_nr        @81  ; mysql_get_charset_by_nr
    mysql_get_client_info          @82  ; mysql_get_client_info
    mysql_get_client_version       @83  ; mysql_get_client_version
    mysql_get_host_info            @84  ; mysql_get_host_info
    mysql_get_option               @85  ; mysql_get_option
    mysql_get_optionv              @86  ; mysql_get_optionv
    mysql_get_parameters           @87  ; mysql_get_parameters
    mysql_get_proto_info           @88  ; mysql_get_proto_info
    mysql_get_server_info          @89  ; mysql_get_server_info
    mysql_get_server_name          @90  ; mysql_get_server_name
    mysql_get_server_version       @91  ; mysql_get_server_version
    mysql_get_socket               @92  ; mysql_get_socket
    mysql_get_ssl_cipher           @93  ; mysql_get_ssl_cipher
    mysql_get_timeout_value        @94  ; mysql_get_timeout_value
    mysql_get_timeout_value_ms     @95  ; mysql_get_timeout_value_ms
    mysql_hex_string               @96  ; mysql_hex_string
    mysql_info                     @97  ; mysql_info
    mysql_init                     @98  ; mysql_init
    mysql_insert_id                @99  ; mysql_insert_id
    mysql_kill                     @100 ; mysql_kill
    mysql_kill_cont                @101 ; mysql_kill_cont
    mysql_kill_start               @102 ; mysql_kill_start
    mysql_list_dbs                 @103 ; mysql_list_dbs
    mysql_list_fields              @104 ; mysql_list_fields
    mysql_list_fields_cont         @105 ; mysql_list_fields_cont
    mysql_list_fields_start        @106 ; mysql_list_fields_start
    mysql_list_processes           @107 ; mysql_list_processes
    mysql_list_tables              @108 ; mysql_list_tables
    mysql_load_plugin              @109 ; mysql_load_plugin
    mysql_load_plugin_v            @110 ; mysql_load_plugin_v
    mysql_more_results             @111 ; mysql_more_results
    mysql_net_field_length         @112 ; mysql_net_field_length
    mysql_net_read_packet          @113 ; mysql_net_read_packet
    mysql_next_result              @114 ; mysql_next_result
    mysql_next_result_cont         @115 ; mysql_next_result_cont
    mysql_next_result_start        @116 ; mysql_next_result_start
    mysql_num_fields               @117 ; mysql_num_fields
    mysql_num_rows                 @118 ; mysql_num_rows
    mysql_options                  @120 ; mysql_options
    mysql_options4                 @119 ; mysql_options4
    mysql_optionsv                 @121 ; mysql_optionsv
    mysql_ping                     @122 ; mysql_ping
    mysql_ping_cont                @123 ; mysql_ping_cont
    mysql_ping_start               @124 ; mysql_ping_start
    mysql_ps_fetch_functions       @125 ; mysql_ps_fetch_functions
    mysql_query                    @126 ; mysql_query
    mysql_query_cont               @127 ; mysql_query_cont
    mysql_query_start              @128 ; mysql_query_start
    mysql_read_query_result        @129 ; mysql_read_query_result
    mysql_read_query_result_cont   @130 ; mysql_read_query_result_cont
    mysql_read_query_result_start  @131 ; mysql_read_query_result_start
    mysql_real_connect             @132 ; mysql_real_connect
    mysql_real_connect_cont        @133 ; mysql_real_connect_cont
    mysql_real_connect_start       @134 ; mysql_real_connect_start
    mysql_real_escape_string       @135 ; mysql_real_escape_string
    mysql_real_query               @136 ; mysql_real_query
    mysql_real_query_cont          @137 ; mysql_real_query_cont
    mysql_real_query_start         @138 ; mysql_real_query_start
    mysql_refresh                  @139 ; mysql_refresh
    mysql_refresh_cont             @140 ; mysql_refresh_cont
    mysql_refresh_start            @141 ; mysql_refresh_start
    mysql_reset_connection         @142 ; mysql_reset_connection
    mysql_reset_connection_cont    @143 ; mysql_reset_connection_cont
    mysql_reset_connection_start   @144 ; mysql_reset_connection_start
    mysql_rollback                 @145 ; mysql_rollback
    mysql_rollback_cont            @146 ; mysql_rollback_cont
    mysql_rollback_start           @147 ; mysql_rollback_start
    mysql_row_seek                 @148 ; mysql_row_seek
    mysql_row_tell                 @149 ; mysql_row_tell
    mysql_select_db                @150 ; mysql_select_db
    mysql_select_db_cont           @151 ; mysql_select_db_cont
    mysql_select_db_start          @152 ; mysql_select_db_start
    mysql_send_query               @153 ; mysql_send_query
    mysql_send_query_cont          @154 ; mysql_send_query_cont
    mysql_send_query_start         @155 ; mysql_send_query_start
    mysql_server_end               @156 ; mysql_server_end
    mysql_server_init              @157 ; mysql_server_init
    mysql_session_track_get_first  @158 ; mysql_session_track_get_first
    mysql_session_track_get_next   @159 ; mysql_session_track_get_next
    mysql_set_character_set        @160 ; mysql_set_character_set
    mysql_set_character_set_cont   @161 ; mysql_set_character_set_cont
    mysql_set_character_set_start  @162 ; mysql_set_character_set_start
    mysql_set_local_infile_default @163 ; mysql_set_local_infile_default
    mysql_set_local_infile_handler @164 ; mysql_set_local_infile_handler
    mysql_set_server_option        @165 ; mysql_set_server_option
    mysql_set_server_option_cont   @166 ; mysql_set_server_option_cont
    mysql_set_server_option_start  @167 ; mysql_set_server_option_start
    mysql_shutdown                 @168 ; mysql_shutdown
    mysql_shutdown_cont            @169 ; mysql_shutdown_cont
    mysql_shutdown_start           @170 ; mysql_shutdown_start
    mysql_sqlstate                 @171 ; mysql_sqlstate
    mysql_ssl_set                  @172 ; mysql_ssl_set
    mysql_stat                     @173 ; mysql_stat
    mysql_stat_cont                @174 ; mysql_stat_cont
    mysql_stat_start               @175 ; mysql_stat_start
    mysql_stmt_affected_rows       @176 ; mysql_stmt_affected_rows
    mysql_stmt_attr_get            @177 ; mysql_stmt_attr_get
    mysql_stmt_attr_set            @178 ; mysql_stmt_attr_set
    mysql_stmt_bind_param          @179 ; mysql_stmt_bind_param
    mysql_stmt_bind_result         @180 ; mysql_stmt_bind_result
    mysql_stmt_close               @181 ; mysql_stmt_close
    mysql_stmt_close_cont          @182 ; mysql_stmt_close_cont
    mysql_stmt_close_start         @183 ; mysql_stmt_close_start
    mysql_stmt_data_seek           @184 ; mysql_stmt_data_seek
    mysql_stmt_errno               @185 ; mysql_stmt_errno
    mysql_stmt_error               @186 ; mysql_stmt_error
    mysql_stmt_execute             @187 ; mysql_stmt_execute
    mysql_stmt_execute_cont        @188 ; mysql_stmt_execute_cont
    mysql_stmt_execute_start       @189 ; mysql_stmt_execute_start
    mysql_stmt_fetch               @190 ; mysql_stmt_fetch
    mysql_stmt_fetch_column        @191 ; mysql_stmt_fetch_column
    mysql_stmt_fetch_cont          @192 ; mysql_stmt_fetch_cont
    mysql_stmt_fetch_start         @193 ; mysql_stmt_fetch_start
    mysql_stmt_field_count         @194 ; mysql_stmt_field_count
    mysql_stmt_free_result         @195 ; mysql_stmt_free_result
    mysql_stmt_free_result_cont    @196 ; mysql_stmt_free_result_cont
    mysql_stmt_free_result_start   @197 ; mysql_stmt_free_result_start
    mysql_stmt_init                @198 ; mysql_stmt_init
    mysql_stmt_insert_id           @199 ; mysql_stmt_insert_id
    mysql_stmt_more_results        @200 ; mysql_stmt_more_results
    mysql_stmt_next_result         @201 ; mysql_stmt_next_result
    mysql_stmt_next_result_cont    @202 ; mysql_stmt_next_result_cont
    mysql_stmt_next_result_start   @203 ; mysql_stmt_next_result_start
    mysql_stmt_num_rows            @204 ; mysql_stmt_num_rows
    mysql_stmt_param_count         @205 ; mysql_stmt_param_count
    mysql_stmt_param_metadata      @206 ; mysql_stmt_param_metadata
    mysql_stmt_prepare             @207 ; mysql_stmt_prepare
    mysql_stmt_prepare_cont        @208 ; mysql_stmt_prepare_cont
    mysql_stmt_prepare_start       @209 ; mysql_stmt_prepare_start
    mysql_stmt_reset               @210 ; mysql_stmt_reset
    mysql_stmt_reset_cont          @211 ; mysql_stmt_reset_cont
    mysql_stmt_reset_start         @212 ; mysql_stmt_reset_start
    mysql_stmt_result_metadata     @213 ; mysql_stmt_result_metadata
    mysql_stmt_row_seek            @214 ; mysql_stmt_row_seek
    mysql_stmt_row_tell            @215 ; mysql_stmt_row_tell
    mysql_stmt_send_long_data      @216 ; mysql_stmt_send_long_data
    mysql_stmt_send_long_data_cont @217 ; mysql_stmt_send_long_data_cont
    mysql_stmt_send_long_data_start @218 ; mysql_stmt_send_long_data_start
    mysql_stmt_sqlstate            @219 ; mysql_stmt_sqlstate
    mysql_stmt_store_result        @220 ; mysql_stmt_store_result
    mysql_stmt_store_result_cont   @221 ; mysql_stmt_store_result_cont
    mysql_stmt_store_result_start  @222 ; mysql_stmt_store_result_start
    mysql_stmt_warning_count       @223 ; mysql_stmt_warning_count
    mysql_store_result             @224 ; mysql_store_result
    mysql_store_result_cont        @225 ; mysql_store_result_cont
    mysql_store_result_start       @226 ; mysql_store_result_start
    mysql_thread_end               @227 ; mysql_thread_end
    mysql_thread_id                @228 ; mysql_thread_id
    mysql_thread_init              @229 ; mysql_thread_init
    mysql_thread_safe              @230 ; mysql_thread_safe
    mysql_use_result               @231 ; mysql_use_result
    mysql_warning_count            @232 ; mysql_warning_count
con Dlltool de MinGW crearemos la libreria.a de mariadb
C:\Program Files (x86)\MariaDB\MariaDB Connector C\lib>dlltool --dllname libmariadb.dll --def libmariadb.def --output-lib libmariadb.a
*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`. Harbour/HMG : It's magic !
(¸.·``··*

Saludos / Regards
DaNiElMaXiMiLiAnO

Whatsapp. := +54901169026142
Telegram Name := DaNiElMaXiMiLiAnO
User avatar
AUGE_OHR
Posts: 2060
Joined: Sun Aug 25, 2019 3:12 pm
DBs Used: DBF, PostgreSQL, MySQL, SQLite
Location: Hamburg, Germany

Re: falta libreria hbmysql

Post by AUGE_OHR »

hi

i have not follow hole Thread but nobody is talking about LIB2A :?:
https://code.google.com/archive/p/lib2a/
have fun
Jimmy
User avatar
danielmaximiliano
Posts: 2611
Joined: Fri Apr 09, 2010 4:53 pm
Location: Argentina
Contact:

Re: falta libreria hbmysql

Post by danielmaximiliano »

AUGE_OHR wrote: Fri Apr 09, 2021 4:55 am hi

i have not follow hole Thread but nobody is talking about LIB2A :?:
https://code.google.com/archive/p/lib2a/
I already talked about Lib2a a while ago, it is a frontend, if you look closely there is no source code in its repository in Google Code.
I think it's done in VB
*´¨)
¸.·´¸.·*´¨) ¸.·*¨)
(¸.·´. (¸.·` *
.·`. Harbour/HMG : It's magic !
(¸.·``··*

Saludos / Regards
DaNiElMaXiMiLiAnO

Whatsapp. := +54901169026142
Telegram Name := DaNiElMaXiMiLiAnO
User avatar
Ismach
Posts: 161
Joined: Wed Nov 28, 2012 5:55 pm
DBs Used: DBF, mySQL, Mariadb, postgreSQL, Oracle, Db2, Interbase, Firebird, and SQLite
Location: Buenos Aires - Argentina

Re: falta libreria hbmysql

Post by Ismach »

Yo ya hice eso, he generado la libmariadb.a y he usado ambas herramientas pero a la hora de testearla no funciona, porque en 64bits es distinto, y hasta cambian los nombres de las funciones internas.
User avatar
Ismach
Posts: 161
Joined: Wed Nov 28, 2012 5:55 pm
DBs Used: DBF, mySQL, Mariadb, postgreSQL, Oracle, Db2, Interbase, Firebird, and SQLite
Location: Buenos Aires - Argentina

Re: falta libreria hbmysql

Post by Ismach »

Hay una herramienta que se llama mysqlcc.exe y si bien fue creada con QT, esta usa una linmysql.dll de la version 4.0 y funciona para Mariadb(64bits) version 10.3.9(64bits), como hace? ni idea, ahora si estoy mas confundido que antes. :o :o :o
Post Reply