MySQL工作台手册// 教程:生成PHP代码来创建与PDO_MySQL的连接

C.6.1教程:生成PHP代码以创建与PDO_MYSQL的连接

MySQL工作台包括一个插件,使用mysqli扩展。本教程展示了如何生成代码PDO_MySQLPHP扩展。您可能会选择不同的扩展或完全不同的语言,因此相应地调整生成的代码。

首先,查看下面示例中显示的插件代码。

#从世行进口DefineModule进口白平衡模块,wbinputs # grt grt导入模块导入#导入mforms模块GUI的东西进口mforms grt #这个Python模块定义为一个模块ModuleInfo = DefineModule (name = " MySQLPDO ",作者=“敬启,version = " 1.0 ") @ModuleInfo.plugin(“info.yourstruly.wb。mysqlpdo",标题= "MySQL PDO(连接到服务器)",输入= [wbinputs.currentSQLEditor()], pluginMenu= "SQL/Utilities") @ModuleInfo.export(grt. exe)"""复制PHP代码连接到使用PDO的活跃的MySQL连接,到剪贴板。#值取决于活动连接类型if编辑器。connection: conn = editor。连接如果conn.driver.name = =“MysqlNativeSocket”:params ={“主机”:“”,“港”:“”,“用户”:conn.parameterValues“用户名”,“套接字”:conn.parameterValues(“套接字”),“dbname”:editor.defaultSchema,“dsn”:“mysql: unix_socket ={$插座};dbname = {$ dbname}}: params ={“主机”:conn.parameterValues“主机名”,“港”:connection . parametervalues ["port"] if conn.parameterValues["port"] else 3306, "user": conn.parameterValues["userName"], "socket": "", "dbname": editor.defaultSchema, "dsn": "mysql:host={$host};port={$port};$ = %港(港口);套接字美元=“%(插座)”;$ user =“%(用户)”;美元密码= " ";美元dbname =“% (dbname)”; try { $dbh = new PDO("%(dsn)s", $user, $password)); } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); } """ % params mforms.Utilities.set_clipboard_text(text) mforms.App.get().set_status_text("Copied PHP code to clipboard") return 0

这个简单的插件生成PHP代码来使用PHP的MySQL连接PDO_MySQL扩展。DSN定义取决于MySQL工作台中的连接类型。您可能想要修改的部分位于文本定义中。

要生成一个连接的PHP代码,首先安装插件如下:

  1. 将插件代码复制到新文件中。本例中使用的文件名为php-pdo-connect_grt.py,但可以使用不同的名称,只要_grt.py.是后缀。

  2. 启动MySQL工作台。点击脚本然后安装插件/模块从菜单打开一个文件浏览器。选择由上一步中的代码创建的插件文件,php-pdo-connect_grt.py在这种情况下。

    请注意

    您可以将文件直接复制到插件文件夹而不是使用安装插件/模块接口。结果是一样的。

  3. 出现提示时,重新启动MySQL工作台。此步骤生成一个已编译的字节码文件(.pyc)从你的源文件。在这个例子中,它生成php-pdo-connect_grt.pyc

  4. 重新启动MySQL工作台后,加载MySQL连接以生成PHP代码。从菜单中单击工具,公用事业公司,然后MySQL PDO(连接到服务器),也就是标题在插件代码中定义。

    此操作将生成的PHP代码复制到系统上的剪贴板中。下面的连接示例将“sakila”定义为生成代码中的默认数据库。

    $ host =“localhost”;$端口= 3306;$ socket =“”;$ user =“root”;美元密码= " ";$ dbname =“sakila”;尝试{$ dbh = new pdo(“mysql:host = {$ host}; port = {$ port}; dbname = {$ dbname},$ user,$ password));} catch (PDOException $e) {echo '连接失败:'。$ e - > getMessage ();}