前往Shuct.Net首页

Shudepb PB反编译专家长时间以来,为业内同类软件事实上的唯一选择.细节,彰显专业.态度,决定品质.

关于PowerBuilder的搜索

PB如何连接mysql数据库(具体步骤,加分) - CSDN论坛 - CSDN.NET --> 首页 论坛帮助 论坛牛人 论坛地图 CSDN > CSDN论坛 > PowerBuilder > 数据库相关 管理菜单 置顶 推荐 锁定 移动 编辑 删除 帖子加分 帖子高亮 结帖 发帖 回复 Yeahson PB如何连接mysql数据库(具体步骤,加分) [问题点数:20分,结帖人Yeahson] 不显示删除回复 显示所有回复 显示星级回复 显示得分回复 只显示楼主 收藏 Yeahson Yeahson 等级: 结帖率:100% 楼主 发表于: 2010-09-14 11:34:01 大家好,请问一下PowerBuilder如何连接mysql数据库?首先是要安装mysql odbc驱动吗?然后在PB里如何配置?请提供详细步骤,非常感谢!连接上后是否会出现中文乱码问题?应该如何解决呢?谢谢! 分享到: 更多 对我有用[1] 丢个板砖[1] 引用 | 举报 | 编辑 删除 管理 回复次数:5 gui41021 gui41021 等级: 结帖率:100% #1 得分:20 回复于: 2010-09-14 15:12:42 说说我用的过程中遇到的问题吧,乱七八糟的,你用时遇到具体问题,再发帖问吧。 第一步 当然是装驱动 不过开发环境装了 就要求客户机也要装 可以考虑INSTALLSHILED打包时 把MYSQL驱动环境带进去 还有一个简单办法 EXE所在目录带上MYODBC3.DLL 就免驱动安装过程了 不过注册ODBC时 需要自己改客户机注册表驱动文件所在位置,这个先别考虑了,装好驱动,OK~ 第二步 建库 下载个Navicat Lite for MySQL 建库 查询什么的 很方便 第三步 建ODBC数据源 和建其他数据源一样。 只不过是安装过MYSQL驱动后,有了MYSQL自己的配置界面 如下图: 需要注意的就是Connect Opentions下的 Initial Statement,刚开始用肯定会遇到乱码问题,网上百度慢慢研究吧,把这里加句set names gbk。另外,搜 MY.INI的配置方法。一堆一堆的 第四步 PB连ODBC的数据源 test OK~ ------------------ 下面是我记下来的几个写代码时遇到的问题和解决办法: 1. 导入数据到MYSQL库后,中文显示为乱码问题,配置ODBC时,在connector options中的 initial statement中添加:set names gbk 2. count函数不能用问题,在ODBC中 advanced选项 flags3 勾选IGNORE SPACE AFTER FUNCTIONS NAMES 3 ODBC连接框自动弹出问题 这样写连接语句 SQLCA.DBParm ="ConnectString='DSN=mis;UID=root;PWD=',ConnectOption='SQL_DRIVER_CONNECT,SQL_DRIVER_NOPROMPT' " 4 导入数据时DATA TOO LONG 问题,MYSQL会自动把定义为VARCHAR(500)长度以上的字段类型转成TEXT或者BLOB,非常无聊,导进来的表要自己把类型改回去。 MY.INI 中 屏蔽 #sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" 位置 # Set the SQL mode to strict下句 5 连续运行会自动断开连接。TRANSCATION NOT CONNECTED 1.编辑mysql.ini 在max_connections=100下面加一行 enable-named-pipe 2.编辑config.default.php 把57行 $cfg['Servers'][$i]['host'] = 'localhost'; // MySQL hostname or IP address 改为 $cfg['Servers'][$i]['host'] = '.'; // MySQL hostname or IP address -------------------- 以前还做了个打开程序时,自动创建MYSQL服务,然后net start mysql,退出程序时net stop mysql,清服务,我这是为了做单机版,你应该用不到,也贴上吧,凑字数 1.安装后的MYSQL全部文件拷贝到编译好的系统目录下,把其中的MY-LARGE.INI复制更名为my.ini,打开my.ini,在[mysqld]结尾中加入下面几句话: basedir=D:\zheng\源程序ceshi\mysql1 <--这是我的程序所在目录 datadir=D:\zheng\源程序ceshi\mysql1\data\ default-character-set=gbk default-storage-engine=innodb max_allowed_packet =12M 2.建立文本文件,保存为.bat格式,内容为先把客户机MYSQL服务关掉,再启动自己的库,比较坏。。写入: net stop mysql D:\zheng\源程序\mysql1\bin\mysqld --console 这里的:‘D:\zheng\源程序’ 这个是程序所在目录,可以通过GetCurrentDirectory()获得,也就是客户存放安装好的系统的文件目录,这个要通过程序实时修改,保证“随地”,mysql1是拷贝过来的mysql库名字。 3.启动系统时,做如下修改 (1)打开MY.INI,修改:把步骤1里加入的 basedir=D:\zheng\源程序ceshi\mysql1 datadir=D:\zheng\源程序ceshi\mysql1\data\ 改为当前目录, 用SetProfileString就行了 (2)修改步骤2里.BAT文件中的库位置,和改文本文件方法一样,fileread出来然后字符串操作。 (3)建立ODBC数据源,直接把MYODBC3.DLL(装驱动时在SYSTEM32下生成的系统文件)放到程序文件夹里,然后指定ODBC注册表驱动项为这个文件。 (4)建立连接,启动系统。 对我有用[1] 丢个板砖[0] 引用 | 举报 | 编辑 删除 管理 xys_777 xys_777 等级: 结帖率:73.47% 2更多勋章 #2 得分:0 回复于: 2010-09-14 22:37:48 好详细 对我有用[0] 丢个板砖[0] 引用 | 举报 | 编辑 删除 管理 Yeahson Yeahson 等级: 结帖率:100% #3 得分:0 回复于: 2010-09-15 11:08:08 真的很详细,1楼的热情回答,非常感谢!现给你加分! 对我有用[0] 丢个板砖[0] 引用 | 举报 | 编辑 删除 管理 xiang987 xiang987 等级: 结帖率:0% #4 得分:0 回复于: 2011-03-16 16:17:33 该回复于2011-03-16 17:03:11被版主删除 编辑 删除 管理 xiang987 xiang987 等级: 结帖率:0% #5 得分:0 回复于: 2011-04-01 08:55:21 该回复于2011-04-01 09:30:33被版主删除 编辑 删除 管理 管理菜单 置顶 推荐 锁定 移动 编辑 删除 帖子加分 帖子高亮 结帖 发帖 回复 写出你眼中的IE11 赢取新年好礼! 勇敢写出你的爱 赢莫文蔚签名大礼 2014年4月微软MVP申请开始了! 陈勇- 敏捷开发现状及发展之路 CSDN高校俱乐部 高校全新改版邀你来学习和挑战 本帖子已过去太久远了,不再提供回复功能。 核心技术类目 全部主题 Java VPN Android iOS ERP IE10 Eclipse CRM JavaScript Ubuntu NFC WAP jQuery 数据库 BI HTML5 Spring Apache Hadoop .NET API HTML SDK IIS Fedora XML LBS Unity Splashtop UML components Windows Mobile Rails QEMU KDE Cassandra CloudStack FTC coremail OPhone CouchBase 云计算 iOS6 Rackspace [关闭] [关闭]