UNIX: Setting up WebDNA - ODBC - Database Server
numero = 213[MySQL]Description = test for MySQL serverDriver = /usr/local/MyODBC/lib/libmyodbc.soTrace = NoTraceFile =Server = localhostUser = testmysqlPassword = anythingPort = 3306Database = testInsert these lines into the file /usr/local/unixODBC/etc/odbcins.ini
[MyODBC]Description = MyODBC driver for MySQLDriver = /usr/local/MyODBC/lib/libmyodbc.soSetup = /usr/local/unixODBC/lib/libodbcmyS.soConfiguring WebDNA for unixODBC:Add the following line to your "WebCatalog Prefs" file.
SQLLibraryPath/usr/local/unixODBC/lib/libodbc.soAfter adding this line, restart WebDNA. You are now ready to use the WebDNA [SQL] context.WebDNA Example: Assuming the MySQL database server is running, and it contains a table named "userlist" within a database named "test", you can access the userlist table using the following WebDNA code.
[SQL dsn=MySQL&username=testmysql&password=anything&statement=SELECT * FROM userlist]Found [numfound] items<br>[founditems][name]<br>[/founditems][/SQL]Whenever WebDNA encounters the [SQL] context, it uses ODBC to make a connection to the DSN you specify. It then executes the SQL statement and retrieves the results, if any. For SQL SELECT statements, you almost always put a [founditems]...[/founditems] context inside the [SQL] context so you can display the information from the matching records.Notice for Mac OS X users:After installing unixODBC, you need to do these extra steps to change the format of libodbc shared libraryLogin as root and go to the folder /usr/local/unixODBC/lib Recompile libodbc.dylib with the command
cc -bundle -o libodbc.so libodbc.1.0.0.dylibYou now need to compile MyODBC. Assuming you are compiling MyODBC with unixODBC for MySQL Server, after you finish the "configure" & "make" steps, you need to run the following command: (all in one line)
cc -bundle -o libmyodbc.so catalog.o connect.o dll.o execute.o info.omyodbc.o options.o prefare.o results.o transact.o utility.o misc.o-L/usr/local/mysql/lib/mysql -lmysqlclient -lz-L/usr/local/unixODBC/lib -lodbcIf you want to use MyODBC with libiodbc, just use it in place of unixODBC when you compile MyODBC.Configuring WebDNA for ORACLE and Windows:You first need to install the ODBC driver for ORACLE as described here.Once the DSN is setup you can find a file called odbc.ini in C:\windowsodbc.ini has the path to the driver as follows:[ORCL]Driver32=C:\oracle\product\10.2.0\db_1\BIN\SQORA32.DLLYou now need to add SQLLibraryPath and paste the path in "WebCatalog Prefs" file:
SQLLibraryPath C:\oracle\product\10.2.0\db_1\BIN\SQORA32.DLLTo access your SQL database using the WebDNA [SQL] context, WebDNA requires that the ODBC Driver Manager libraries be installed, and that a data source name (DSN) has been setup. For this example, we will assume the following:
[MySQL]
Description = test for MySQL server
Driver = /usr/local/MyODBC/lib/libmyODBC.so
Trace = No
TraceFile =
Server = localhost
User = testmysql
Password = anything
Port = 3306
Database = test
[MyODBC]
Description = MyODBC driver for MySQL
Driver = /usr/local/MyODBC/lib/libmyODBC.so
Setup = /usr/local/unixODBC/lib/libODBCmyS.so
SQLLibraryPath/usr/local/unixODBC/lib/libODBC.so
[SQL dsn=MySQL&username=testmysql&password=anything&statement=SELECT * FROM userlist]
Found [numfound] items<br>
[founditems]
[name]<br>
[/founditems]
[/SQL]
cc -bundle -o libODBC.so libODBC.1.0.0.dylib
cc -bundle -o libmyODBC.so catalog.o connect.o dll.o execute.o info.o
myODBC.o options.o prefare.o results.o transact.o utility.o misc.o
-L/usr/local/mysql/lib/mysql -lmysqlclient -lz
-L/usr/local/unixODBC/lib -lODBC
SQLLibraryPath C:\oracle\product\10.2.0\db_1\BIN\SQORA32.DLL
DOWNLOAD WEBDNA NOW!
WebDNA applications...
AWS Raw WebDNA LAMP-Plus WebServerAmazon Web Services (AWS) README for Machine Image ID...
Technical Change HistoryThis Technical Change History provides a reverse chronological list of WebDNA changes...
WebDNA LibrariesA list of available libraries for WebDNA...
WebDNA ModulesA list of the currently available modules...
Tips and TricksA list of user-submitted tips ...
calculates the CRC32 value of a given file...
[sendmail]There is hardly a website that doesn't at some point need to send an email...
[shownext][shownext] is a special context used to create links (or more accurately...
[lookup]...
[grep]Replaces text based on a regular expression...
[lowercase]Changes all upper case letters to lower case...