applikation----x----odbc driver manager----foobar ODBC driver----foobar database
|
|
- Helge Skaarup
- 7 år siden
- Visninger:
Transkript
1 Denne guide er oprindeligt udgivet på Eksperten.dk ODBC i C/C++ Denne artikel beskriver hvordan man bruger ODBC i C/C++. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab til C/C++ og SQL. Skrevet den 04. Feb 2009 af arne_v I kategorien Programmering / C/C++ Historie: V1.0-07/03/ original V1.1-14/12/ close cursor V1.2-26/12/ små ændringer ODBC Mange kender ODBC (Open Database Connectivity) og har brugt det, men meget få er klar over at det i virkeligheden er et C API. ODBC er opfundet for at give et database uafhængigt API. Det fungerer som: applikation----odbc driver manager----foobar ODBC driver----foobar database ODBC definerer nogle standard C funktioner som man kan kalde uanset hvad databasen er. De fleste kender nok ODBC som: applikation----x----odbc driver manager----foobar ODBC driver----foobar database hvor det mellem liggende lag X gør det nemt at bruge ODBC fra Access, ASP etc., men det er stadig de samme C funktioner der kaldes. Det er bare koden i X som kalder dem. Og slut brugeren får et lidt nemmere interface. Denne artikel vil beskrive hvordan man lave simple forespørgsler og opdateringer i en database via ODBC. Man kan også få ODBC til ikke Windows platforme. Men de er ikke så meget brugte (embedded SQL er mere udbredt). Og jeg har aldrig prøvet det. Så det vil jeg ikke komme ind på. Jeg formoder at API'et er det samme. ODBC API dokumentationen er online her: <a href=" ms aspx</a>
2 Fordele og ulemper Fordele: - virker med alle database (næsten alle databaser har en ODBC driver) - virker med alle compilere (kræver ikke C++, MFC, ATL eller andet) - rimeligt simpelt at forstå Ulemper: - et lidt klodset API som godt kan give meget kode Jeg er forbløffet over at ODBC kald ikke bruges mere i C/C++. Der er kommet nyere teknologi i form af OLE DB og ADO. Men de har mindre support fra database leverandørerne og kræver kommercielle compilere. Det er almindeligt kendt at OLE DB / ADO performer bedre end ODBC i VBA/VBS/VB. Men jeg er ikke overbevist om at det samme gælder i C/C++. Min hypotese er at OLE DB er designet og dermed optimeret til at skulle bruges i VBA/VBS/VB, mens ODBC er designet og dermed optimeret til at skulle bruges i C/C++, og at det er X laget der gør ODBC langsomt. Men jeg kan ikke bevise min hypotese. Eksempler Eksemplerne vil bruge denne meget simple database: CREATE TABLE t1 ( f1 INTEGER; f2 VARCHAR(50), PRIMARY KEY(f1) ); Eksemplerne vil være i C d.v.s. kunne bruges både i C og C++. Eksemplerne er meget simple, men bør nemt kunne udvides til noget mere avanceret udfra dokumentationen på ovennævnte link. Eksemplerne er testet mod en Access database, men ODBC er som sagt database uafhængig. For at bruge MySQL skal man kun ændre DSN eller connection string. Forespørgsel Med DSN: #include <stdio.h> #include <stdlib.h>
3 /* nødvendige header filer for at bruge ODBC */ #include <windows.h> #include <sql.h> #include <sqlext.h> /* * åben connection til: * DSN = "TestMSAccess" * username = "" (bliver opfattet som defaut "Admin" i Access) * password = "" */ char *dsn = "TestMSAccess"; char *un = ""; char *pw = ""; int main() /* ODBC environment */ SQLHENV Environment; /* ODBC connection */ SQLHDBC DataBaseConnect; /* ODBC statement */ SQLHSTMT stmt; /* ODBC return status */ SQLRETURN stat; /* query */ char *sqlstr = "SELECT * FROM T1"; /* integer værdi (f1) */ int i; /* string værdi (f2) */ char s[50]; /* længder af integer og string værdi */ int il,sl; /* alloker environment = initialiser ODBC */ stat = SQLAllocEnv(&Environment); printf("error in AllocEnv\n"); /* connect til database */ stat = SQLAllocConnect(Environment,&DataBaseConnect); printf("error in AllocConnect\n"); stat = SQLConnect(DataBaseConnect, (SQLCHAR *)dsn,(sqlsmallint)strlen(dsn), (SQLCHAR *)un,(sqlsmallint)strlen(un), (SQLCHAR *)pw,(sqlsmallint)strlen(pw)); printf("error in Connect\n"); /* alloker statement */ stat = SQLAllocStmt(DataBaseConnect,&stmt);
4 printf("error in AllocStmt\n"); /* udfør statement */ stat = SQLExecDirect(stmt,(SQLCHAR *)sqlstr,strlen(sqlstr)); printf("error in ExecDirect\n"); /* bind kolonne 1 (f1) til i (integer værdi) og kolonne 2 (f2) til sv (string værdi) */ stat = SQLBindCol(stmt,1,SQL_C_LONG,&i,sizeof(i),(SQLINTEGER *)&il); printf("error in BindCol\n"); stat = SQLBindCol(stmt,2,SQL_C_CHAR,s,sizeof(s),(SQLINTEGER *)&sl); printf("error in BindCol\n"); /* hent alle rækker */ for(;;) stat = SQLFetch(stmt); break; s[sl] = '\0'; printf("%d %s\n",i,s); /* luk cursor så statement kan genbruges til ny forespørgsel */ SQLCloseCursor(stmt); /* frigør statement */ SQLFreeStmt(stmt,SQL_DROP); /* disconnect og frigør connection */ SQLDisconnect(DataBaseConnect); SQLFreeConnect(DataBaseConnect); /* frigør environment */ SQLFreeEnv(Environment); return 0; Uden DSN: #include <stdio.h> #include <stdlib.h> /* nødvendige header filer for at bruge ODBC */ #include <windows.h> #include <sql.h> #include <sqlext.h>
5 /* * åben connection til: * driver = "Microsoft Access Driver (*.mdb)" * database = "D:\\Database\\MSAccess\\Test.mdb" * username = "Admin" * password = "" */ char *constr = "Driver=Microsoft Access Driver (*.mdb);dbq=d:\\database\\msaccess\\test.mdb;uid=admin;pwd=;"; int main() /* ODBC environment */ SQLHENV Environment; /* ODBC connection */ SQLHDBC DataBaseConnect; /* ODBC statement */ SQLHSTMT stmt; /* ODBC return status */ SQLRETURN stat; /* returned connection string */ char outconstr[1024]; /* length of returned connection string */ int outconlen; /* query */ char *sqlstr = "SELECT * FROM T1"; /* integer værdi (f1) */ int i; /* string værdi (f2) */ char s[50]; /* længder af integer og string værdi */ int il,sl; /* alloker environment = initialiser ODBC */ stat = SQLAllocEnv(&Environment); printf("error in AllocEnv\n"); /* connect til database */ stat = SQLAllocConnect(Environment,&DataBaseConnect); printf("error in AllocConnect\n"); stat = SQLDriverConnect(DataBaseConnect,NULL, (SQLCHAR *)constr,(sqlsmallint)strlen(constr), (SQLCHAR *)outconstr, (SQLSMALLINT)sizeof(outconstr), (SQLSMALLINT *)&outconlen,sql_driver_complete); printf("error in Connect\n"); /* alloker statement */ stat = SQLAllocStmt(DataBaseConnect,&stmt);
6 printf("error in AllocStmt\n"); /* udfør statement */ stat = SQLExecDirect(stmt,(SQLCHAR *)sqlstr,strlen(sqlstr)); printf("error in ExecDirect\n"); /* bind kolonne 1 (f1) til i (integer værdi) og kolonne 2 (f2) til sv (string værdi) */ stat = SQLBindCol(stmt,1,SQL_C_LONG,&i,sizeof(i),(SQLINTEGER *)&il); printf("error in BindCol\n"); stat = SQLBindCol(stmt,2,SQL_C_CHAR,s,sizeof(s),(SQLINTEGER *)&sl); printf("error in BindCol\n"); /* hent alle rækker */ for(;;) stat = SQLFetch(stmt); break; s[sl] = '\0'; printf("%d %s\n",i,s); /* luk cursor så statement kan genbruges til ny forespørgsel */ SQLCloseCursor(stmt); /* frigør statement */ SQLFreeStmt(stmt,SQL_DROP); /* disconnect og frigør connection */ SQLDisconnect(DataBaseConnect); SQLFreeConnect(DataBaseConnect); /* frigør environment */ SQLFreeEnv(Environment); return 0; Opdatering Med DSN: #include <stdio.h> #include <stdlib.h> /* nødvendige header filer for at bruge ODBC */ #include <windows.h>
7 #include <sql.h> #include <sqlext.h> /* * åben connection til: * DSN = "TestMSAccess" * username = "" (bliver opfattet som defaut "Admin" i Access) * password = "" */ char *dsn = "TestMSAccess"; char *un = ""; char *pw = ""; int main() /* ODBC environment */ SQLHENV Environment; /* ODBC connection */ SQLHDBC DataBaseConnect; /* ODBC statement */ SQLHSTMT stmt; /* ODBC return status */ SQLRETURN stat; /* insert */ char sqlstr[200]; /* counter */ int i; /* alloker environment = initialiser ODBC */ stat = SQLAllocEnv(&Environment); printf("error in AllocEnv\n"); /* connect til database */ stat = SQLAllocConnect(Environment,&DataBaseConnect); printf("error in AllocConnect\n"); stat = SQLConnect(DataBaseConnect, (SQLCHAR *)dsn,(sqlsmallint)strlen(dsn), (SQLCHAR *)un,(sqlsmallint)strlen(un), (SQLCHAR *)pw,(sqlsmallint)strlen(pw)); printf("error in Connect\n"); /* alloker statement */ stat = SQLAllocStmt(DataBaseConnect,&stmt); printf("error in AllocStmt\n"); /* indsæt 10 rækker */ for(i=0;i<10;i++)
8 sprintf(sqlstr,"insert INTO t1 VALUES(%d,'%s')",100+i,"Dette er en test"); stat = SQLExecDirect(stmt,(SQLCHAR *)sqlstr,strlen(sqlstr)); printf("error in ExecDirect\n"); /* frigør statement */ SQLFreeStmt(stmt,SQL_DROP); /* disconnect og frigør connection */ SQLDisconnect(DataBaseConnect); SQLFreeConnect(DataBaseConnect); /* frigør environment */ SQLFreeEnv(Environment); return 0; Uden DSN: #include <stdio.h> #include <stdlib.h> /* nødvendige header filer for at bruge ODBC */ #include <windows.h> #include <sql.h> #include <sqlext.h> /* * åben connection til: * driver = "Microsoft Access Driver (*.mdb)" * database = "D:\\Database\\MSAccess\\Test.mdb" * username = "Admin" * password = "" */ char *constr = "Driver=Microsoft Access Driver (*.mdb);dbq=d:\\database\\msaccess\\test.mdb;uid=admin;pwd=;"; int main() /* ODBC environment */ SQLHENV Environment; /* ODBC connection */ SQLHDBC DataBaseConnect; /* ODBC statement */ SQLHSTMT stmt; /* ODBC return status */ SQLRETURN stat; /* returned connection string */ char outconstr[1024];
9 /* length of returned connection string */ int outconlen; /* insert */ char sqlstr[200]; /* counter */ int i; /* alloker environment = initialiser ODBC */ stat = SQLAllocEnv(&Environment); printf("error in AllocEnv\n"); /* connect til database */ stat = SQLAllocConnect(Environment,&DataBaseConnect); printf("error in AllocConnect\n"); stat = SQLDriverConnect(DataBaseConnect,NULL, (SQLCHAR *)constr,(sqlsmallint)strlen(constr), (SQLCHAR *)outconstr, (SQLSMALLINT)sizeof(outconstr), (SQLSMALLINT *)&outconlen,sql_driver_complete); printf("error in Connect\n"); /* alloker statement */ stat = SQLAllocStmt(DataBaseConnect,&stmt); printf("error in AllocStmt\n"); /* indsæt 10 rækker */ for(i=0;i<10;i++) sprintf(sqlstr,"insert INTO t1 VALUES(%d,'%s')",100+i,"Dette er en test"); stat = SQLExecDirect(stmt,(SQLCHAR *)sqlstr,strlen(sqlstr)); printf("error in ExecDirect\n"); /* frigør statement */ SQLFreeStmt(stmt,SQL_DROP); /* disconnect og frigør connection */ SQLDisconnect(DataBaseConnect); SQLFreeConnect(DataBaseConnect); /* frigør environment */ SQLFreeEnv(Environment); return 0;
10 Build Nedenfor angives hvordan man builder command line med forskellige compilere. Hvis man bruger en IDE skal man lave noget tilsvarende. Microsoft VC++: cl query.c odbc32.lib cl insert.c odbc32.lib Borland C++ Builder: bcc32 query.c \borland\bcc55\lib\psdk\odbc32.lib bcc32 insert.c \borland\bcc55\lib\psdk\odbc32.lib (den gratis command line BCB 5.5 kommer tilsyneladende ikke med ODBC32.LIB, men den kan man få ved at installere Microsoft Platform SDK - og jeg er sikker på at betalings versionerne har den) GCC/MinGW32: gcc query.c -lodbc32 -o query.exe gcc insert.c -lodbc32 -o insert.exe Fejl Hvis man får en fejl på en SQL sætning og gerne vil vide årsagen kan man: int errptr,msglen; char state[5],msg[1000];... SQLGetDiagRec(SQL_HANDLE_STMT, stmt, 1, (SQLCHAR*)state, (SQLINTEGER*)&errptr, (SQLCHAR*)msg, sizeof(msg), (SQLSMALLINT*)&msglen); printf("error text = %s\n", msg);' Kommentar af mathiash d. 01. Jan Kommentar af looppen d. 09. Aug
11 Kommentar af brhino d. 26. Mar
MySQL C API. Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere.
Denne guide er oprindeligt udgivet på Eksperten.dk MySQL C API Denne artikel beskriver hvordan man bruger MySQL C API. Der er beskrivelse af build med forskellige compilere. Den forudsætter lidt kendskab
Læs mereForskellige databaser
Denne guide er oprindeligt udgivet på Eksperten.dk Forskellige databaser Denne artikel beskriver kort forskellige database typer, produkter og API'er. Målet er at give et overblik over hvad der findes
Læs mereDen forudsætter kendskab til C++ og lidt kendskab til SQL og MySQL C API.
Denne guide er oprindeligt udgivet på Eksperten.dk Brug af MySQL i C++ Denne artikel bygger ovenpå artiklen "MySQL C API" og forklarer hvordan man kan programmere mere objekt orienteret. Den forudsætter
Læs mereDatabaseadgang fra Java
Databaseadgang fra Java Grundlæggende Programmering med Projekt Peter Sestoft Fredag 2007-11-23 Relationsdatabasesystemer Der er mange databaseservere Microsoft Access del af Microsoft Office MySQL god,
Læs mereIntroduktion til SQL queries
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til SQL queries Denne artikel beskriver nogle forskellige muligheder i SQL queries. Eksemplerne skulle gerne være standard SQL og virke i
Læs merePrepared Statements. Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC.
Denne guide er oprindeligt udgivet på Eksperten.dk Prepared Statements Denne artikel beskriver hvorfor prepared statements er gode. Den forudsætter lidt kendskab til Java og JDBC. Skrevet den 18. Feb 2010
Læs mereSkrevet den 18. Feb 2010 af arne_v I kategorien Programmering / Visual Basic.NET
Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til VB.NET og ADO.NET. Der findes en tilsvarende artikel
Læs mereParameters. Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET.
Denne guide er oprindeligt udgivet på Eksperten.dk Parameters Denne artikel beskriver hvorfor parameters er gode. Den forudsætter lidt kendskab til C# og ADO.NET. Der findes en tilsvarende artikel med
Læs mereListen over reserverede ord er meget lang, men de væsentligste vil jeg beskrive her i denne artikel:
Denne guide er oprindeligt udgivet på Eksperten.dk SQL og ASP En artikel omkring simpel SQL og hvordan disse opbygges, udformes og udføres, sådan at man kan få et brugbart resultat i ASP. Dette ligefra
Læs mereJava web applikationer med Tomcat
Denne guide er oprindeligt udgivet på Eksperten.dk Java web applikationer med Tomcat Denne artikel beskriver hvordan man kan konfigurere container managed security og en database connection pool i Tomcat.
Læs mereDatabase programmerings tips
Denne guide er oprindeligt udgivet på Eksperten.dk Database programmerings tips Denne artikel vil introducere nogle problem stillinger med flere samtidige brugere, som man skal tænke på, når man udvikler
Læs mereIndholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:...
Indholdsfortegnelse Databaser og PHP... 3 Opgave... 4 Opgave... 5 Opgave... 6 Sidste opgave er en lille gæstebog... 7 Kilder og nyttige links:... 9 Nogle HTML tags... 9 Databaser og PHP Når vi snakker
Læs mereDatabase design for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Database design for begyndere Denne artikel beskriver hvordan man kommer fra ide til database design. Den stopper inden normal former. Den forudsætter
Læs mereDatabase tips. Den forudsætter lidt kendskab til SQL men er for mindre erfarne. Denne guide er oprindeligt udgivet på Eksperten.dk
Denne guide er oprindeligt udgivet på Eksperten.dk Database tips Denne artikel vil give nogle forskellige små praktiske råd om ting man skal tænke på når man arbejder med databaser og applikationer som
Læs mereDelphi og Databaser for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Delphi og Databaser for begyndere Denne artikel handler om hvordan man udnytter noget af det bedste i Delphi: Dets gode muligheder for integrering med
Læs mereRatingsystem i PHP og MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Ratingsystem i PHP og MySQL Lær at lave et system til at vise rating/bedømmelse på artikler og nyheder. Skrevet den 03. Feb 2009 af virtual1ty I kategorien
Læs merePID2000 Archive Service
PROLON CONTROL SYSTEMS Herstedvesterstræde 56 DK-2620 Albertslund Danmark Tlf.: (+45) 43620625 Fax: (+45) 43623125 PID2000 Archive Service Bruger vejledning Juni 2002 Denne manual beskriver brugen af softwaren
Læs mereDynamisk PHP design OPDATERET
Denne guide er oprindeligt udgivet på Eksperten.dk Dynamisk PHP design OPDATERET I har måske undret jer over "http://bla.dk/?side=kontakt", her beskriver jeg hvordan, og hvorfor Skrevet den 03. Feb 2009
Læs mereSend fra Java. Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende fra Java.
Denne guide er oprindeligt udgivet på Eksperten.dk Send email fra Java Denne artikel fortæller hvad man skal bruge og hvordan man skal kode for at sende email fra Java. Simple eksempler ikke noget vildt
Læs mereForskellige Java versioner
Denne guide er oprindeligt udgivet på Eksperten.dk Forskellige Java versioner Denne artikel beskriver lidt om de forskellige Java versioner. Den forklarer J2SE/J2ME/J2EE, plugin/jre/sdk og Sun Java/Microsoft
Læs mereImport af rekursivt (parent-child) hierarki i Palo
Import af rekursivt (parent-child) hierarki i Palo Dette dokument beskriver hvordan et simpelt rekursivt (parent-child) hierarki kan importeres ind i Palo på forskellige måder via SQL og samtidig bibeholde
Læs mereODBC made easy på dansk (når bare man ved hvordan) Jesper Michelsen, Data warehouse & Analyse
ODBC made easy på dansk (når bare man ved hvordan) Jesper Michelsen, Data warehouse & Analyse Agenda Præsentation Hvad er ODBC? ODBC Datakildeadministrator System-DSN Distribution Fil-DSN Scriptede connections
Læs mereSQL for MySQL-begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk SQL for MySQL-begyndere I denne artikel vil jeg prøve at beskrive MySQL på begynderniveau. SQL står for Structured Query Language, og er et sprog til
Læs mereI mit script tager jeg højde for det problem ved, at gemme et unikt tal mellem 0-9 på 6 cifre og derved vil de så blive vist som 2 online.
Denne guide er oprindeligt udgivet på Eksperten.dk Hvem er online? Online script, som tager højde for at der kan være flere personer, som har den samme IP-adresse. Scriptet viser hvor lang tid brugeren
Læs mereProgram Dokumentation PC Software Skrevet af. Gruppen. Version 1.0
Program Dokumentation PC Software Skrevet af Gruppen. Version 1.0 Indholds fortegnelse 1. INDLEDNING...3 1.1. FORMÅL...3 1.2. REFERENCER...3 1.3. VERSIONSHISTORIE...3 1.4. DEFINITIONER...3 1.5. DOKUMENTATIONENS
Læs mereRMI introduktion. Denne artikel beskriver Java RMI (Remtote Method Invocation).
Denne guide er oprindeligt udgivet på Eksperten.dk RMI introduktion Denne artikel beskriver Java RMI (Remtote Method Invocation). Den beskriver teorien bag RMI, viser et simpelt kode eksempel og forklarer
Læs mereArkitektur for begyndere
Denne guide er oprindeligt udgivet på Eksperten.dk Arkitektur for begyndere Denne artikel beskriver forskellige basale n-tier arkitekturer. Som man bør kende og have valgt inden man går igang med at udvikle
Læs mereJNI. Denne artikel beskriver JNI (Java Native Interface) som er måden hvorpå Java kan kalde native kode.
Denne guide er oprindeligt udgivet på Eksperten.dk JNI Denne artikel beskriver JNI (Java Native Interface) som er måden hvorpå Java kan kalde native kode. Den viser et simpelt eksempel og forklarer hvordan
Læs mereSingleton pattern i Java
Denne guide er oprindeligt udgivet på Eksperten.dk Singleton pattern i Java Denne artikel beskriver Singleton pattern og implementation i Java. Den forudsætter kendskab til Java men ikke til Singleton.
Læs mereUploade billeder eller andre filer ved hjælp af php og mysql
Denne guide er oprindeligt udgivet på Eksperten.dk Uploade billeder eller andre filer ved hjælp af php og mysql Denne artikel viser hvordan man kan uploade et billede eller en anden fil, og tilknytte det
Læs mereRigtig SQL Programmering
Rigtig SQL Programmering 1 SQL i Rigtige Programmer Indtil nu har vi brugt SQL direkte i kommandolinje promt/gui program, hvor vi kan lave forespørgsler til databasen I virkeligheden: Programmer kontakter
Læs mereTagwall med Php & MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Tagwall med Php & MySQL Her laver vi en tagwall i Php & MySQL... jeg forklarer dog ikke så meget, men jeg håber du kan få det til at blive til en tagwall
Læs mereHvilket sprog er hurtigst
Denne guide er oprindeligt udgivet på Eksperten.dk Hvilket sprog er hurtigst Denne artikel forsøger at aflive forskellige myter om hvilke sprog der er hurtigst. Den forudsætter ikke noget særligt. Skrevet
Læs mereMySQL i Java. Tutorial lavet af Jákup W. Hansen TSU 2006 2.semester 05.januar 2007
MySQL i Java Tutorial lavet af Jákup W. Hansen TSU 2006 2.semester 05.januar 2007 Hvad er MySQL? Det er et database system, som er gratis for os at bruge. Det er lidt mere besværligt i starten at bruge
Læs mereRMI avanceret. Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer.
Denne guide er oprindeligt udgivet på Eksperten.dk RMI avanceret Denne artikel beskriver nogle mere avancerede features i RMI. Den gør det muligt at lave mere realistiske applikationer. Den forudsætter
Læs mereFoto-Applikation Dokumentation. Et Kod-i-Ferien projekt
Foto-Applikation Dokumentation Et Kod-i-Ferien projekt 1 Indholdsfortegnelse Systemets generelle opsætning... 3 Systemets elementer... 4 iphone applikation... 4 PHP-script... 4 Wordpress-plugin... 4 Website...
Læs mereEn Kort Introduktion til Oracle
En Kort Introduktion til Oracle Henrik Bulskov 12. februar 2001 bulskov@ruc.dk 1 Start SQL*Plus... 1 1.1 TELNET... 1 1.2 WINDOWS SQL PLUS... 2 2 Kør et SQL-script... 3 3 Hjælp i SQL*Plus... 3 4 Editering
Læs mereI denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud.
Denne guide er oprindeligt udgivet på Eksperten.dk RSS "Live Bogmærke" I denne artikel vil jeg gennemgå hvordan en side for RSS "Live Bogmærke" kan se ud. Skrevet den 10. Feb 2009 af madsass I kategorien
Læs mereBemærk! Et PHP script har kun brug for at forbinde én gang til databaseserveren. Det kan så sagtens udføre flere kommandoer vha. denne forbindelse.
Mysqli Webintegrator Når vi arbejder med server-side scripting ( i vort tilfælde PHP), har vi ofte behov for at kunne tilgå data, som vi opbevarer i en database. Det kan f.eks. dreje sig om nyhederne i
Læs mereLoginsystem (med MySQL)
Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem (med MySQL) Dette er en guide til, hvordan man kan lave et loginsystem med php og muligvis også med sessioner og MySQL Skrevet den 02. Feb
Læs mereBegrynder til at lave log ind system
Denne guide er oprindeligt udgivet på Eksperten.dk Begrynder til at lave log ind system Hej Vil jeg gerne lave en lille programmering forklare til hvordan du laver din helt egen lille start på at log ind
Læs mereExcel som database i ASP via ADO
Denne guide er oprindeligt udgivet på Eksperten.dk Excel som database i ASP via ADO Viser hvordan excel kan bruges som database i ASP. Artiklen viser hvordan man henter, indsætter, opdater og sletter fra
Læs mereDenne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS.
Denne guide er oprindeligt udgivet på Eksperten.dk XML i ASP Denne artikel gennemgår kort nogle mulighederne for brug af XML i ASP. Det sker ved brug af eksempler. Eksemplerne vil være i VBS. Den forudsætter
Læs mereOpret ODBC datakilde Vejledning
Vejledning V. 1 APRIL 2011 FOR KUNDESERVICE Indholdsfortegnelse 1 Indledning... 3 1.1 Formål... 3 1.2 Målgruppe... 3 1.3 Krav... 3 2 Opret ODBC Datakilde (Open Database Connectivity)... 3 2.1 Forbindelse
Læs mereEksempel på en database: studenter, kurser, eksamener
Udvidet Programmering 1999 Forelæsning 20, fredag 12. november 1999 Relationsdatabaser: relationer, tupler, attributter Forespørgselssproget SQL Databasesystemet PostgreSQL Tilgang til relationsdatabaser
Læs mereDatabase for udviklere. Jan Lund Madsen PBS10107
Database for udviklere Jan Lund Madsen PBS10107 Indhold LINQ... 3 LINQ to SQL og Arkitektur... 3 O/R designere... 5 LINQ Den store introduktion med.net 3.5 er uden tvivl LINQ(udtales link): Language-INtegrated
Læs mereParameterisering af databasekald med ASP og ADO
Denne guide er oprindeligt udgivet på Eksperten.dk Parameterisering af databasekald med ASP og ADO Jeg har efterhånden set en del spørgsmål her på Eksperten vedr. SQL injections og hvordan man kan beskytte
Læs mereTilfældige tal. Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge.
Denne guide er oprindeligt udgivet på Eksperten.dk Tilfældige tal Denne artikel introducerer generering af tilfældige tal og viser lidt om hvad man kan og ikke mindst hvad man ikke bør bruge. Den forudsætter
Læs mereIntroduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach (jeans@ruc.dk) 2002
Introduktion til Oracle, Datalogi, RUC Af: Jens Lauterbach (jeans@ruc.dk) 2002 På datalogi har vi en databaseserver, som de studerende på datalogi kan benytte til projekter og som også benyttes i forbindelse
Læs mereSamspillet mellem databaser og kort styres af GeoCAD programmet GeoDB.
GeoCad modul GeoDB I GeoCAD er det muligt at koble relationsdatabase til GeoEDIT. Her igennem er det muligt at lagre forskellige oplysninger i databasen og koble disse oplysninger til objekter i kortet.
Læs mereHvorfor skal vi bruge objekt orienteret databaser?
OODBMS Vs. RDBMS 1 Indholdsfortegnelse Hvorfor skal vi bruge objekt orienteret databaser?... 3 OODBMS i erhvervslivet... 4 Bagsiden af medaljen... 5 OODBMS i praksis... 6 Konklusion... 8 2 Hvorfor skal
Læs mereLoginsystem med PHP4, klasser, sessions og MySQL database
Denne guide er oprindeligt udgivet på Eksperten.dk Loginsystem med PHP4, klasser, sessions og MySQL database Artiklen indeholder et simpelt loginsystem, der benytter en klasse. Den er med vilje simplificeret,
Læs mereGæstebog med validering opbygget med MySQL
Denne guide er oprindeligt udgivet på Eksperten.dk Gæstebog med validering opbygget med MySQL Dette er en simpel gæstebog, som kan hjælpe folk med at lave en velfungerende gæstebog uden alt for meget arbejde.
Læs mereEndnu mere om tilfældige tal
Denne guide er oprindeligt udgivet på Eksperten.dk Endnu mere om tilfældige tal Denne artikel bygger oven på de to forrige artikler om tilfældige tal. Den indeholder lidt matematik og anvendelse på PHP
Læs mereEksamen, DSDS, efterår 2007
Eksamen, DSDS, efterår 2007 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech og Martin Elsman IT Universitetet i København 7. januar 2008 Alle hjælpemidler er tilladte, dog ikke
Læs mereProcesbeskrivelse - Webprogrammering
Procesbeskrivelse - Webprogrammering Indholdsfortegnelse Forudsætninger... 1 Konceptet... 2 Hjemmesiden... 2 Server-side... 3 Filstrukturen... 3 Databasehåndtering og serverforbindelse... 4 Client-side...
Læs merePHP Pagination. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 01. May 2011 af dab93 I kategorien Programmering / Andre
Denne guide er oprindeligt udgivet på Eksperten.dk PHP Pagination I denne guide lærer du om at lave et pagination system med programmerings sproget PHP og MySQL database. Et pagination system er en "side-skiftende"
Læs merePHP 3 UGERS FORLØB PHP, MYSQL & SQL
PHP 3 UGERS FORLØB PHP, MYSQL & SQL Uge 1 & 2 Det basale: Det primære mål efter uge 1 og 2, er at få forståelse for hvordan AMP miljøet fungerer i praksis, og hvordan man bruger PHP kodesproget til at
Læs mereLog ind med PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 09. May 2011 af dab93 I kategorien Programmering / Andre
Denne guide er oprindeligt udgivet på Eksperten.dk Log ind med PHP Med denne guide lærer du hvordan du kan logge ind på din hjemmeside med PHP. Guiden viser dig hvordan koderne skal opstilles, og hvad
Læs mereDesign Diaries.
Design Diaries http://blog.lykkeeilert.dk/ Patricia Gambula Larsen Patrick Lykke Eilert Ninette Andersen cph-pl130@cphbusiness.dk cph-pe58@cphbusiness.dk cph-na96@cphbusiness.dk INDHOLD Use case model
Læs mereMsSQL: Basal performance tuning, part 1
Denne guide er oprindeligt udgivet på Eksperten.dk MsSQL: Basal performance tuning, part 1 Hvordan man skriver "God SQL" for bedre performance. Skrevet den 03. Feb 2009 af trer I kategorien Databaser /
Læs mereI denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen ud i en løkke
Denne guide er oprindeligt udgivet på Eksperten.dk MySQL for nybegynder I denne arktikle går jeg gennem Slet, Ret og Opret data i en MySQL database. der er også en lille del i den hvor den postere datanen
Læs mereI denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal.
Denne guide er oprindeligt udgivet på Eksperten.dk Afrund til helt tal I denne artikel vil du ved hjælp af arrays kunne afrunde et decimaltal til et helt tal. Skrevet den 03. Feb 2009 af tjomsen I kategorien
Læs mereWeb- og serverprogrammering
Dette materiale er under Åben Dokumentlicens, se http://www.sslug.dk/linuxbog/licens.html Web- og serverprogrammering Databasekommunikation - dag 7 Strategier til databaseadgang JDBC (Java DataBase Connectivity)
Læs mereDB undervisning 01-01
Databaser... 2 Tabeller... 2 Redundans... 3 Første regel... 4 Anden regel... 4 Tredje regel... 5 Relationer... 5 Opskrift... 6 SQL sætninger til at oprette tabeller... 7 SQL sætninger til at indsætte data...
Læs mereReeksamen, DSDS, forår 2008
Reeksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 22. august 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.
Læs merePROJEKT 3. The Design Diaries. LINK TIL BLOG: Af Mikkel Borg Svendsen & Sebastian Frank MUL B
PROJEKT 3 The Design Diaries LINK TIL BLOG: http://mbsgraphic.dk/blog/ Af Mikkel Borg Svendsen & Sebastian Frank MUL B 1 INDHOLDS- FORTEGNELSE HVEM ER BLOGGERNE? 3 USE CASE 4 ATTRIBUT TABEL 5 PHP CODE
Læs mereIntroduction til.net remoting i VB.NET
Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i VB.NET Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i VB.NET. Den forudsætter
Læs mereDe vigtigste SQL-sætninger. SQL kap Oprette database. DDL og DML
SQL kap 6-7 + 17-20 DDL og DML 1 De vigtigste SQL-sætninger Data Definition Language (DDL) create table: opretter en ny tabel create unique index: tilføjer et index til en tabel drop table : sletter en
Læs mereProgrammering i C Intro og grundlæggende C 5. marts 2007
Programmering i C Intro og grundlæggende C 5. marts 2007 Mads Pedersen, OZ6HR mads@oz6hr.dk Plan for kurset Ma. 5/3: Ma. 19/3: Ma. 2/4: To. 12/4: Formål, intro, grundlæggende Videre, sprogkonstruktioner
Læs mereSQL ny front-end
SQL 2016 - ny front-end Overblik De største nyheder i SQL Server 2016 finder vi på front-enden, hvor en helt ny og redesignet rapporteringsplatform i Reporting Services er den fremadrettede grundstamme
Læs mereHej alle sammen, nu fjerner vi lige mystikken om alle de "ulovlige tags" her på eksperten.dk
Denne guide er oprindeligt udgivet på Eksperten.dk Tags på Eksperten.dk Hej alle sammen, nu fjerner vi lige mystikken om alle de "ulovlige tags" her på eksperten.dk Skrevet den 30. okt 2009 af mbm2007
Læs mereTest med NUnit. Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det.
Denne guide er oprindeligt udgivet på Eksperten.dk Test med NUnit Denne artikel introducerer NUnit. Den forklarer ideen med NUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab
Læs mereI denne artikel vil vi bruge en User klasse som vi så vil gruppere på forskellige måder.
Denne guide er oprindeligt udgivet på Eksperten.dk Collections i.net Når du kigger i namespacet System.Collections finder du over 10 forskellige klasser. At vælge den rigtige til netop din applikations
Læs mereIntroduktion til ant. Denne artikel beskriver Apache ant, som er et værktøj til at builde Java applikationer med.
Denne guide er oprindeligt udgivet på Eksperten.dk Introduktion til ant Denne artikel beskriver Apache ant, som er et værktøj til at builde Java applikationer med. Den beskriver nogle af de mest brugte
Læs mereDen forudsætter kendskab til XML og VB.NET men ikke til brug af XML i VB.NET.
Denne guide er oprindeligt udgivet på Eksperten.dk Brug af XML i VB.NET Denne artikel vil vise lidt om hvordan man kan bruge XML i VB.NET. Den forudsætter kendskab til XML og VB.NET men ikke til brug af
Læs mereData lagring. 2. iteration (implement backend)
Data lagring 2. iteration (implement backend) Emner Grundlæggende database begreber. Data definitionskommandoer ER-diagrammer og cardinalitet/relationer mellem tabeller Redundant data og Normalisering
Læs mereWeb 2.0. World Wide Web (www)
Web 2.0 World Wide Web (www) I marts 1989 skrev Tim Berners-Lee et information udveksling program kaldt ENQUIRE. Da han arbejde i CERN, var han ikke tilfreds med kommunikationen, derfor videreudviklede
Læs mereLRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) { int wmid, wmevent; programmering med
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam) int wmid, wmevent; PAINTSTRUCT Introduktion ps; til HDC hdc; programmering med switch (message) case WM_COMMAND: wmid = LOWORD(wParam);
Læs mereEksamen, DSDS, forår 2008
Eksamen, DSDS, forår 2008 Introduktion til Scripting, Databaser og Systemarkitektur Jonas Holbech IT Universitetet i København 3. juni 2008 Alle hjælpemidler er tilladte, dog ikke computer og kommunikationsmidler.
Læs mereSidste forelæsning. Jacob Aae Mikkelsen. 28. april 2013 IMADA. Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28.
Sidste forelæsning Jacob Aae Mikkelsen IMADA 28. april 2013 Jacob Aae Mikkelsen (IMADA) Sidste forelæsning 28. april 2013 1 / 36 Outline 1 Brugere og Sikkerhed Jacob Aae Mikkelsen (IMADA) Sidste forelæsning
Læs mereJSP, Tomcat. Tutorial lavet af Jákup W. Hansen TSU semester 10.october 2007
JSP, Tomcat Tutorial lavet af Jákup W. Hansen TSU 2006 3.semester 10.october 2007 Hvad er JSP(Java Server Pages): Det er en teknik som er bygget ovenover Servlets teknikken, men fidusen er at det skal
Læs mereVærktøjer fra værktøjskassen. Søren Breddam, Stevns Kommune
Værktøjer fra værktøjskassen Søren Breddam, Stevns Kommune sb@stevns.dk 1stevns kommune Mapbasic i Stevns Kommune Data Kørsel af planlagte opgaver, så data altid er opdaterede. Logfil til overvågning Dagligt
Læs mereDelphi - CrackMe og Keygen
Denne guide er oprindeligt udgivet på Eksperten.dk Delphi - CrackMe og Keygen Dette er min første artikel! :) Men jeg synes nu den er blevet meget god! :D Jeg giver et et eksempel på hvordan man kan lave
Læs mereMicrosoft Log Parser, Windows logfil analyse
Denne guide er oprindeligt udgivet på Eksperten.dk Microsoft Log Parser, Windows logfil analyse Microsoft's logfiler er ikke lette at bruge. med Microsoft Log Parser, har du alle muligheder. Log parser
Læs merePHP guide af Daniel Pedersen
PHP guide af Daniel Pedersen Side 1 af 12 Indholdsfortegnelse PHP guide af Daniel Pedersen Side 2 af 12 Indledning I dette hæfte finder du forklaringer til PHP funktioner, løkker, variabler samt en række
Læs mereDerfor vil jeg bygge dette eksempel på een table hvor der kan tilkyttes personer til ALLE noder og der kan tilføjes et vilkårligt antal niveauer
Denne guide er oprindeligt udgivet på Eksperten.dk TreeView i Access II Jeg vil i denne anden udgave af treeview føljetonen begynde på et mere brugbart eksempel med et TreeView. Vi laver en ny database
Læs mereAfsending af s vha. ASP
Denne guide er oprindeligt udgivet på Eksperten.dk Afsending af emails vha. ASP Det kan ofte være praktisk at afsende emails fra sin hjemmeside. Denne artikel tager udgangspunkt i komponenten JMail fra
Læs mereLotusPhere comes to you IM Agent Manager - IM Support - Sametime / 27 Tobias Fonsmark -
LotusPhere comes to you 2010 - IM Agent Manager - IM Support - Sametime 8.5 1 / 27 Tobias Fonsmark - tobias.fonsmark@semaphor.dk Agenda Introduktion til Semaphor IM Agent Manager Hvad er IM Agent Manager
Læs mereArrays i PHP. Denne guide er oprindeligt udgivet på Eksperten.dk. Skrevet den 04. Feb 2009 af taskmgr I kategorien Programmering / PHP
Denne guide er oprindeligt udgivet på Eksperten.dk Arrays i PHP De fleste som har skrevet omfattende scripts, er før eller siden stødt på problemet med at de bliver vanskelige at overskue hvis man bruger
Læs mereInstallationsguide til Oracle Database XE 10.2 og APEX 3.1.1
Installationsguide til Oracle Database XE 10.2 og APEX 3.1.1 Oracle Database Express Edition (XE) er Oracles lille gratis database tilsvarende Microsofts SQL Server Express Edition. Oracle Database XE
Læs merePHP Quick Teknisk Ordbog
PHP Quick Teknisk Ordbog Af Daniel Pedersen PHP Quick Teknisk Ordbog 1 Indhold De mest brugte tekniske udtryk benyttet inden for web udvikling. Du vil kunne slå de enkelte ord op og læse om hvad de betyder,
Læs mereData load og udtræk. 2. iteration: implmentation (test af backend) PHP mysql. Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON
Data load og udtræk 2. iteration: implmentation (test af backend) 1 PHP mysql Loade og parse XML (SimpleXML, Xpath) Filhåndtering i PHP JSON 2 Data udtræk PHP mysql: Processen 1. Forbind til MySQL server
Læs mereLogging i Java. Den forudsætter kendskab til Java og noget generel udviklings erfaring. Denne guide er oprindeligt udgivet på Eksperten.
Denne guide er oprindeligt udgivet på Eksperten.dk Logging i Java Denne artikel beskriver baggrunden for logging frameworks og viser hvordan man bruger 2 af de mest almindelige: Apache Log4J og J2SE/Java
Læs mereThreads i Java. Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java
Denne guide er oprindeligt udgivet på Eksperten.dk Threads i Java Denne artikel giver en introduktion til threads i Java. Den beskriver hvad tråde er og forklarer hvordan de bruges i Java Den forudsætter
Læs mereTest med JUnit 3. Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det.
Denne guide er oprindeligt udgivet på Eksperten.dk Test med JUnit 3 Denne artikel introducerer JUnit 3. Den forklarer ideen med JUnit. Og den viser hvordan man konkret bruger det. Den forudsætter kendskab
Læs mereUdvikling af DOTNET applikationer til MicroStation i C#
Udvikling af DOTNET applikationer til MicroStation i C# Praktiske tips for at komme i gang. Gunnar Jul Jensen, Cowi Hvorfor nu det? Mdl og Vba kan det hele Fordelene er : udviklingsmiljøet er eksternt
Læs mereFå sin querystring til at fungere. (Nybegyndere)
Denne guide er oprindeligt udgivet på Eksperten.dk Få sin querystring til at fungere. (Nybegyndere) Artikelen henvender sig til nybegyndere der har problemer med at få sin querystring til at fungere (Access/ASP).
Læs mereIntroduction til.net remoting i C#
Denne guide er oprindeligt udgivet på Eksperten.dk Introduction til.net remoting i C# Denne artikel beskriver teorien bag.net remoting og viser nogle simple kode eksempler i C#. Den forudsætter kendskab
Læs mereUndtagelseshåndtering i C#
Denne guide er oprindeligt udgivet på Eksperten.dk Undtagelseshåndtering i C# I modsætning til C++ kan man i C# ikke skrive et program uden undtagelseshåndtering, så derfor har jeg skrevet denne guide
Læs mere