Maison base de données tutoriel mysql Flex中的MySQL管理(3)_MySQL

Flex中的MySQL管理(3)_MySQL

Jun 01, 2016 pm 02:00 PM

我省略了与前例类似的部分代码,以缩短代码段长度。差别重点在于标签,它将创建HTTP Service Flex对象,而后者将与服务器进行通讯。该服务对象由onInitialize方法调用, 而后者在Flex应用程序启动时调用。onInitialize方法先设置服务的URL,然后开始发出请求。请求完成后,就调用onResult方法。onResult方法将组合框的dataProvider设为web服务器的返回结果。

方法最有价值的部分如下:

myservice.lastResult..database.* 
Copier après la connexion

看看这个语句。如果之前不了解E4X的作用,我可以稍加解释。myservice.lastResult变量实际上是一个XML文档。‘..’句法等价于XPath ‘//’句法。它表示“将具有此名字的任何一个标签给我”,在本例中就是“将任何一个数据库标签给我”。星号表示数据库标签的任何子标签。由于数据库标签只有一个子标签,即数据库名称的文字部分,因此这段代码就表示“将XML文档中每个数据库的名称给我”。这个功能真的很好用!

正是由于ActionScript的这种E4X扩展,Flex才能够方便地与XML数据源进行通讯。据我所知,还没有其他语言能够如此方便地查询XML文档。因此利用强大的E4X,就可以在浏览器中运行该应用程序,并得到如图2所示的结果。

Flex中的MySQL管理(3)_MySQL
图2:填充数据库名称的数据库组合框

单击该组合框时,将弹出下拉列表,并显示机器中的数据库列表。是的,其中有很多数据库。几乎每篇有关PHP、Flex、Rails或其他技术的文章都会用到数据库,所以我拥有大量的数据库。

创建表视图代码

创建示例Flex应用程序的最后一步就是添加表格的下拉菜单,并在数据网格中显示选中表格的数据。该例的完整代码如清单4所示。

清单4:flexmysql.mxml

<p><?xml version="1.0" encoding="utf-8"?><br><application xmlns:mx="<FONT color=#333333 size=3>http://www.adobe.com/2006/mxml</FONT>" layout="vertical">initialize="onInitialize()"><br><script><br>import mx.collections.ArrayCollection;<br>private static const SERVICE_BASE:String = "<font color="#333333" size="3">http://localhost/sql/req.php</font>";<br>private var loadingDatabases:Boolean = true;<br>private var loadingTables:Boolean = false;<br>public function onInitialize():void<br>{<br>loadingDatabases = true;<br>myservice.url = SERVICE_BASE;<br>myservice.send( null );<br>} public function onResult(event:Event):void<br>{<br>if ( loadingDatabases )<br>{<br>loadingDatabases = false;<br>selectedDatabase.dataProvider = myservice.lastResult..database.*;<br>onSelectDatabase();<br>}<br>else if ( loadingTables )<br>{<br>loadingTables = false;<br>var tables:Array = new Array();<br>for each ( var tablRecord:XML in myservice.lastResult..record )<br>{<br>for each( var tablCol:XML in tablRecord.* )<br>tables.push( tablCol..*.toString() );<br>}<br>selectedTable.dataProvider = tables;<br>onSelectTable();<br>} else<br>{<br>var records:Array = new Array();<br>for each ( var record:XML in myservice.lastResult..record )<br>{<br>var outRecord:Array = new Array();<br>for each( var column:XML in record.* )<br>outRecord[ column.name() ] = column..*.toString();<br>records.push( outRecord );<br>}<br>var data:ArrayCollection = new ArrayCollection( records );<br>dg1.dataProvider = data;<br>}<br>} public function onSelectDatabase():void<br>{<br>loadingDatabases = false;<br>loadingTables = true;<br>var <font color="#333333" size="3">url:String</font> = SERVICE_BASE;<br>url += "?mode=getTables&db="+selectedDatabase.selectedLabel;<br>myservice.url = url;<br>myservice.send(null);<br>} public function onSelectTable():void<br>{<br>var <font color="#333333" size="3">url:String</font> = SERVICE_BASE;<br>url += "?mode=getData&db="+selectedDatabase.selectedLabel;<br>url += "&table="+selectedTable.selectedLabel;<br>myservice.url = url;<br>myservice.send(null);<br>}<br>]]><br></script><br><httpservice id="myservice" result="onResult(event)" resultformat="e4x"><br></httpservice><br><vbox horizontalalign="left"><br><hbox><br><label text="Database:"></label><br><combobox id="selectedDatabase" width="381" height="21">change="onSelectDatabase()"><br></combobox><br></hbox><br><hbox><br><label text="Table:"></label><br><combobox id="selectedTable" width="381" height="21">change="onSelectTable()"><br></combobox><br></hbox><br><datagrid id="dg1" width="452"><br></datagrid><br></vbox><br></application></p>
Copier après la connexion

其中有一处重要修改,即添加了onSelectDatabase()函数的代码,以获取表格列表,然后将其输入到onResult()函数中,还添加了onSelectTable()函数,该函数可检索表格中的数据,并在onResult()处理器中设置数据网格

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
2 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Repo: Comment relancer ses coéquipiers
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée Comment résoudre le problème de MySQL ne peut pas ouvrir la bibliothèque partagée Mar 04, 2025 pm 04:01 PM

Cet article aborde l'erreur "Implom Open Open Wibrary" de MySQL. Le problème découle de l'incapacité de MySQL à localiser les bibliothèques partagées nécessaires (fichiers .so / .dll). Les solutions impliquent la vérification de l'installation de la bibliothèque via le package du système m

Réduisez l'utilisation de la mémoire MySQL dans Docker Réduisez l'utilisation de la mémoire MySQL dans Docker Mar 04, 2025 pm 03:52 PM

Cet article explore l'optimisation de l'utilisation de la mémoire MySQL dans Docker. Il traite des techniques de surveillance (statistiques Docker, du schéma de performance, des outils externes) et des stratégies de configuration. Il s'agit notamment des limites de mémoire Docker, de l'échange et des CGROUP, à côté

Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Comment modifier une table dans MySQL en utilisant l'instruction ALTER TABLE? Mar 19, 2025 pm 03:51 PM

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin) Exécutez MySQL dans Linux (avec / sans conteneur Podman avec phpmyadmin) Mar 04, 2025 pm 03:54 PM

Cet article compare l'installation de MySQL sur Linux directement par rapport à l'utilisation de conteneurs Podman, avec / sans phpmyadmin. Il détaille les étapes d'installation pour chaque méthode, mettant l'accent sur les avantages de Podman isolément, portabilité et reproductibilité, mais aussi

Qu'est-ce que Sqlite? Aperçu complet Qu'est-ce que Sqlite? Aperçu complet Mar 04, 2025 pm 03:55 PM

Cet article fournit un aperçu complet de SQLite, une base de données relationnelle autonome et sans serveur. Il détaille les avantages de SQLite (simplicité, portabilité, facilité d'utilisation) et les inconvénients (limitations de concurrence, défis d'évolutivité). C

Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Comment configurer le cryptage SSL / TLS pour les connexions MySQL? Mar 18, 2025 pm 12:01 PM

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape Exécuter plusieurs versions MySQL sur macOS: un guide étape par étape Mar 04, 2025 pm 03:49 PM

Ce guide démontre l'installation et la gestion de plusieurs versions MySQL sur MacOS à l'aide de Homebrew. Il met l'accent sur l'utilisation de Homebrew pour isoler les installations, empêchant les conflits. L'article détaille l'installation, les services de démarrage / d'arrêt et le meilleur PRA

Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Quels sont les outils de GUI MySQL populaires (par exemple, MySQL Workbench, PhpMyAdmin)? Mar 21, 2025 pm 06:28 PM

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]

See all articles