Hello Mindaugas,

Tuesday, June 09, 2009, 4:47:35 PM, you wrote:
>> Im looking also for example how to connect to Firebird using  sddfb.
MK>    RDDINFO(RDDI_CONNECT, {"FIREBIRD",, user, password, database})

MK> I was writing SDDFB right after SDDMY, so I wanted to keep, form:
MK>    RDDINFO(RDDI_CONNECT, {driver, server, user, password, database})

MK> AFAI understand, server is not specified for Firebird. So, I left this 
MK> parameter empty. If it is not going to be implemented in Firebird we can 
MK> drop this empty parameter, since, other databases (like odbc) has 
MK> completely different parameters anyway.

OK, I revised my sample code (based on mysql sample) and now
( i.e. RDDINFO(RDDI_CONNECT, {"FIREBIRD", ,"SYSDBA","masterkey", 
"C:\KS\KS-PPS3\BAZA\KSPPS.FDB"})

hbmk -lfbclient test1.prg

is a little better but no luck
with use  DBUSEAREA ...

I received first error message:
Error SDDFB/1903
Prepare statement failed: SELECT * FROM
country (DOS Error 249) then long (neverending) list of  Exception errors

Called from DBUSEAREA(0)
Called from MAIN(45) in test1.prg
------------------------------------------------------------------------
Application Internal Error - C:\Harbour\contrib\rddsql\sddfb\tests\test1.exe
Terminated at: 2009.06.17 23:23:54
Unrecoverable error 6005: Exception error: 

    Exception Code:C0000005
    Exception Address:00427661
    EAX:FFFFFFFE  EBX:FFFFFFF6  ECX:1400000C  EDX:0016DB50
    ESI:001AB954  EDI:004B5427  EBP:0012FCCC
    CS:EIP:001B:00427661  SS:ESP:0023:0012FC68
    DS:0023  ES:0023  FS:003B  GS:0000
    Flags:00010286
    CS:EIP: F6 43 04 02 0F 84 2E 07 00 00 8B 43 04 83 E0 FC
    SS:ESP: 004B5427 001AB954 001AB954 1001B1F3 004B5427 001AB954 0012FD34 
001AB954 00000030 0012FC98 004280BF 001AC130 0012FCA8 0042862D 001AC134 001AC144

    C stack:
    EIP:     EBP:       Frame: OldEBP, RetAddr, Params...
    00427661 0012FCCC   0012FCD8 004280BF FFFFFFFE
    004280BF 0012FCD8   0012FD34 00404F38 00000002 004B5427 0012FD64 001AB954 
001AB82C 001AB954 0012FD04 00429DE0
    00404F38 0012FD34   140D0398 00000004 00000001 00000004 0000000F 00000000 
0043D133 001AB954 0012FD64 004B5447
  <...> and so on


Below my test prg (based on mysql sample)


/*
 * $Id: test1.prg 11064 2009-05-16 13:54:46Z snaiperis $
 */

#include "dbinfo.ch"
#include "error.ch"

#define DBI_QUERY             1001

#define RDDI_CONNECT          1001
#define RDDI_DISCONNECT       1002
#define RDDI_EXECUTE          1003
#define RDDI_ERROR            1004
#define RDDI_ERRORNO          1005
#define RDDI_NEWID            1006
#define RDDI_AFFECTEDROWS     1007
#define RDDI_QUERY            1008


REQUEST SDDFB, SQLMIX

FIELD RESIDENTS,NAME,CODE

PROC main()
LOCAL hConn
   
RDDSETDEFAULT("SQLMIX")
AEVAL(RDDLIST(), {|X| QOUT(X)})

     hConn := RDDINFO(RDDI_CONNECT, {"FIREBIRD", ,"SYSDBA","masterkey", 
"C:\KS\KS-PPS3\BAZA\KSPPS.FDB"}) 

If hConn == 0
     
   ? "Unable connect to the server"
     
     RETURN
   else
    ? "Connected to the server ->"+str(hConn)
   ENDIF

  CreateTable()

   ? "Let's open table (press any key)"
   INKEY(0)
   DBUSEAREA( .T.,, "SELECT * FROM country", "country" )    
   ? "Let's browse table (press any key)"
   INKEY(0)
   Browse()
   DBCLOSEALL()
RETURN

STATIC PROC CreateTable()
   ? RDDINFO(RDDI_EXECUTE, "DROP TABLE country")
   ? RDDINFO(RDDI_EXECUTE, "CREATE TABLE country (CODE char(3), NAME char(50), 
RESIDENTS int(11))")
   ? RDDINFO(RDDI_EXECUTE, "INSERT INTO country values ('LTU', 'Lithuania', 
3369600), ('USA', 'United States of America', 305397000), ('POR', 'Portugal', 
10617600), ('POL', 'Poland', 38115967), ('AUS', 'Australia', 21446187), ('FRA', 
'France', 64473140), ('RUS', 'Russia', 141900000)")
   ? RDDINFO(RDDI_EXECUTE, "SELECT * FROM country")

RETURN

PROC RDDSYS();  RETURN


Any ideas are welcome ;-)

-- 
Best regards,

 Jacek Kubica


_______________________________________________
Harbour mailing list
Harbour@harbour-project.org
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to