欢迎来到皮皮网网首页

【武术台 ts源码】【mudweb源码】【blibli源码】odbc 源码

来源:网银转账源码 时间:2024-11-26 13:55:51

1.odbc Դ?源码?
2.LINUX安装ODBC驱动
3.mysql-odbc编译
4.Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)

odbc 源码

odbc Դ??

       应用场景

       硬件/整机信息:AMD平台

       OS版本信息:服务器e版

       软件信息:psqlodbc .版本

       功能介绍

       部分用户在使用etl工具连接数据库时,需要使用到odbc驱动,源码下面介绍下服务器e版系统中编译安装此工具的源码相关过程。

       ETL:是源码英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、源码转换(transform)、源码武术台 ts源码加载(load)至目的源码端的过程。

       ODBC:是源码英文Open Database Connectivity的缩写,中文含义表示为开放数据库互连,源码是源码微软公司开放服务结构(WOSA,Windows Open Services Architecture)中有关数据库的源码一个组成部分,它建立了一组规范,源码mudweb源码并提供了一组对数据库访问的源码标准API(应用程序编程接口)。

       psqlodbc:即表示ODBC driver for PostgreSQL,源码是源码一种支持访问开放式互联数据库且支持PostgreSQL数据库的访问脚本。

       安装使用

       步骤一:安装相关依赖

       root@uos-PC:~# yum install unixODBC-devel

       root@uos-PC:~# yum install libpq-devel

       步骤二:编译安装

       psqlodbc项目各版本源码下载地址:https://www.postgresql.org/ftp/odbc/versions/src/

       本文中以.版本作为示例,此版本源码包如下:

       psqlodbc-...tar.gz

       .9 KB

       下载相关源码包拷贝至服务器系统中,解压安装包并进入对应目录执行:

       root@uos-PC:~# ./configure --with-odbcinst=/usr/local/etc --enable-pgsql

       root@uos-PC:~# make

       root@uos-PC:~# make install

       步骤三:配置环境变量

       在需要运行ODBC的用户下执行以下命令配置环境变量:

       (注意:此处是追加新增ODBC相关信息至环境变量参数项,而不是覆盖写入,执行指令时请勿遗漏相关的符号。)

       使环境变量生效:

       root@uos-PC:~# source ~/.bash_profile

       步骤四:验证配置

       执行以下命令查看 ODBC 的配置:

       root@uos-PC:~# odbcinst -j

LINUX安装ODBC驱动

       为了在Linux系统上安装ODBC驱动,首先需要从unixODBC.org/unixODBC-2... 下载源码包并解压至 /usr/local/。之后,blibli源码进入解压后的目录执行构建与安装命令。

       使用如下命令进行配置、构建与安装:

       #cd /usr/local/unixODBC-2.3.1/

       #./configure --prefix=/usr/local/unixODBC-2.3.1 --includedir=/usr/include --libdir=/usr/lib -bindir=/usr/bin --sysconfdir=/etc

       #make

       #make install

       安装完成后,通过运行odbcinst -j来测试查看unixODBC的安装情况,结果应包含驱动、系统数据源、文件数据源、用户数据源、SQL数据类型大小等信息。如果出现错误,如“libodbcinst.so.2: cannot open shared object file: No such file or directory”,mspaint 源码可能是因为共享库路径设置问题。

       解决此错误,可以执行以下步骤:

       1. 如果共享库文件位于 /lib 或 /usr/lib 目录下,执行 ldconfig 命令以更新共享库缓存。

       2. 如果共享库位于 /usr/local/lib 或其他非默认目录,先将此目录添加到 /etc/ld.so.conf 文件中,然后运行 ldconfig。

       3. 可以通过设置全局变量 LD_LIBRARY_PATH 来临时指定共享库路径,方法是在用户配置文件或shell中添加命令行,如:

       export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH

       请注意,此方法通常为临时解决方案,preloader源码适用于无权限或暂时需要的情况。

mysql-odbc编译

       近期工作中需要编译mysql-odbc的驱动库,以下为遇到的问题及解决方法。

       首先,参照官网指南进行操作:MySQL :: MySQL Connector/ODBC Developer Guide :: 4.5 Building Connector/ODBC from a Source Distribution on Unix。

       由于之前未接触过,对基本概念不甚了解。

       首先,需要配置好依赖项目,如libmysqlclient.a。系统配置中需包含iodb或unixODBC。指南中已明确说明。

       为使用静态库,我下载了mysql-8.0.编译的libmysqlclient库。

       解压.src.rpm文件:命令 rpm2cpio ***.src.rpm | cpio -idv。

       解压后,会有对应版本的mysql-8.0..tar.gz。注意,这里有boost版本,编译时可能需要指定boost路径。创建build目录,进入build目录后进行以下操作:

       cmake -DWITH_BOOST="/root/lq_workspace/mysql-5.7./boost" ../

       然后执行make和make install。注意mysql的安装路径,以便后续编译odbc时使用。例如,我将其放置在/usr/local/mysql/lib中。

       接下来,开始编译ODBC:

       1. 下载源码,注意编译版本所需的gcc和g++版本。我选择较低版本,非最新版本。

       2. 解压后,创建build路径,开始编译。注意以下参数:

       cmake ../ -DWITH_UNIXODBC=1 -DDISABLE_GUI=1 -DMYSQL_DIR="/usr/local/mysql/" -DMYSQLCLIENT_STATIC_LINKING=true

       编译时出现定义冲突,我将CMakeLists.txt中不需要的部分屏蔽。

       cmake时-DWITH_UNIXODBC=1指定使用unixOdbc,默认为iodbc,需在系统上先配置。

       -DMYSQL_DIR="/usr/local/mysql/"表示安装libmysqlclient的路径。

       -DMYSQLCLIENT_STATIC_LINKING=true连接静态库,默认为动态库。

       构建完成后,提示连接libmysqlclient_r.a,低版本区分多线程支持,高版本无需区分。为连接,创建软连接:

       ln -s /usr/local/mysql/lib/libmysqlclient.a /usr/local/mysql/lib/libmysqlclient_r.a

       准备完成后,执行make生成所需odbc驱动。

       配置mysqlodbc后,即可连接mysql。

       总结:编译源码时,会遇到各种版本依赖问题,需逐一排查。同时,编译时的编译可选项作用也不容忽视。

Microsoft OLE DB Provider for ODBC Drivers (0xE)

       ä½ çš„添加方法有漏洞的~`用这个:

       set conn=server.createobject("adodb.connection")

       DBpath = server.mappath("mdb\example.mdb")

       conn.open "driver={ microsoft access driver (*.mdb)};dbq="& DBpath

       name=request.form("name")

       tel=request.form("tel")

       message=request.form("message")

       Set Rs = Server.CreateObject("ADODB.RecordSet")

       SQL = "Select * From [Guestbook]"

       Rs.Open SQL,Conn,1,3

       Rs("Name") = Name

       Rs("Tel") = Tel

       Rs("Message") = Message

       Rs.Update

       response.write "记录添加成功!"