JavaScript peut-il se connecter à MySQL? Si c'est le cas, comment?
javascript
mysql
ajax
json
Anonyme le Grand
la source
la source
Réponses:
Non, JavaScript ne peut pas se connecter directement à MySQL. Mais vous pouvez mélanger JS avec PHP pour ce faire.
JavaScript est un langage côté client et votre base de données MySQL va s'exécuter sur un serveur
la source
Le JavaScript côté client ne peut pas accéder à MySQL sans une sorte de pont. Mais les déclarations en gras ci-dessus selon lesquelles JavaScript n'est qu'un langage côté client sont incorrectes - JavaScript peut s'exécuter côté client et côté serveur, comme avec Node.js.
Node.js peut accéder à MySQL via quelque chose comme https://github.com/sidorares/node-mysql2
Vous pouvez également développer quelque chose en utilisant Socket.IO
Vouliez-vous demander si une application JS côté client peut accéder à MySQL? Je ne sais pas si de telles bibliothèques existent, mais elles sont possibles.
EDIT : Depuis l'écriture, nous avons maintenant MySQL Cluster :
JSDB offre une interface JS aux bases de données.
Un ensemble organisé de packages DB pour Node.js de sindresorhus.
la source
Si vous souhaitez vous connecter à une base de données MySQL en utilisant JavaScript, vous pouvez utiliser Node.js et une bibliothèque appelée mysql . Vous pouvez créer des requêtes et obtenir des résultats sous forme de tableau de registres. Si vous voulez l'essayer, vous pouvez utiliser mon générateur de projet pour créer un backend et choisir MySQL comme base de données à connecter. Ensuite, exposez simplement votre nouvel API REST ou point de terminaison GraphQL à votre front et commencez à travailler avec votre base de données MySQL.
ANCIENNE RÉPONSE GAUCHE PAR NOSTALGIE
PUIS
Si je comprends la question et me corrige si je me trompe, cela se réfère au modèle de serveur classique avec JavaScript uniquement côté client. Dans ce modèle classique, avec les serveurs LAMP (Linux, Apache, MySQL, PHP), la langue en contact avec la base de données était PHP, donc pour demander des données à la base de données, vous devez écrire des scripts PHP et faire écho aux données renvoyées au client. Fondamentalement, la répartition des langues selon les machines physiques était:
Cela a répondu à un modèle MVC (modèle, vue, contrôleur) où nous avions les fonctionnalités suivantes:
Pour le contrôleur, nous avons des outils vraiment intéressants comme jQuery , en tant que bibliothèque "bas niveau" pour contrôler la structure HTML (DOM), puis de nouveaux outils plus haut niveau comme Knockout.js qui nous permettent de créer des observateurs qui connectent différents Les éléments DOM les mettent à jour lorsque des événements se produisent. Il existe également Angular.js de Google qui fonctionne de manière similaire, mais qui semble être un environnement complet. Pour vous aider à choisir parmi eux, voici deux excellentes analyses des deux outils: Knockout vs Angular.js et Knockout.js vs Angular.js . Je lis toujours. J'espère qu'ils vous aideront.
MAINTENANT
Dans les serveurs modernes basés sur Node.js, nous utilisons JavaScript pour tout. Node.js est un environnement JavaScript avec de nombreuses bibliothèques qui fonctionnent avec Google V8, moteur JavaScript Chrome. La façon dont nous travaillons avec ces nouveaux serveurs est:
Ensuite, nous avons beaucoup de packages que nous pouvons installer à l'aide du NPM (gestionnaire de packages Node.js) et les utiliser directement dans notre serveur Node.js en le nécessitant juste (pour ceux d'entre vous qui veulent apprendre Node.js, essayez ce tutoriel pour débutants pour un aperçu). Et parmi ces packages, vous en avez certains pour accéder aux bases de données. Grâce à cela, vous pouvez utiliser JavaScript côté serveur pour accéder aux bases de données My SQL.
Mais le mieux que vous puissiez faire si vous comptez travailler avec Node.js est d'utiliser les nouvelles bases de données NoSQL comme MongoDB , basées sur des fichiers JSON. Au lieu de stocker des tables comme MySQL, il stocke les données dans des structures JSON, de sorte que vous pouvez placer des données différentes dans chaque structure comme de longs vecteurs numériques au lieu de créer d'énormes tables pour la taille de la plus grande.
J'espère que cette brève explication vous sera utile, et si vous voulez en savoir plus à ce sujet, voici quelques ressources que vous pouvez utiliser:
J'espère que cela vous aide à démarrer.
S'amuser!
la source
Je pense que vous auriez besoin d'ajouter quelque chose comme PHP dans l'équation. PHP pour interagir avec la base de données et ensuite vous pourriez faire des appels AJAX avec Javascript.
la source
Un peu tard mais récemment, j'ai découvert que MySql 5.7 avait un plugin http via lequel l'utilisateur peut se connecter directement à mysql maintenant.
Recherchez le client HTTP pour mysql 5.7
la source
La réponse simple est: non.
JavaScript est un langage côté client qui s'exécute dans le navigateur ( nonobstant node.js ) et MySQL est une technologie côté serveur qui s'exécute sur le serveur.
Cela signifie que vous utilisez généralement un langage côté serveur comme ASP.NET ou PHP pour vous connecter à la base de données.
la source
OUI? Jetez un œil à un météore. Liens:
http://meteor.com/screencast et http://net.tutsplus.com/tutorials/javascript-ajax/whats-this-meteor-thing/
Je ne comprends pas comment cela se fait. Mais Nettuts + a mis cette chose dans la section javascript-ajax, peut-être que la magie se produit.
Il montre également un moyen de se connecter et d'insérer à MongoDB avec JS, comme ceci:
la source
En fonction de votre environnement, vous pouvez utiliser Rhino pour ce faire, voir le site Web de Rhino . Cela vous donne accès à toutes les bibliothèques Java à partir de JavaScript.
la source
Oui. Il existe un plugin HTTP pour MySQL.
http://blog.ulf-wendel.de/2014/mysql-5-7-http-plugin-mysql/
Je suis juste en train de googler à ce sujet maintenant, ce qui m'a conduit à cette question de stackoverflow. Vous devriez pouvoir AJAX une base de données MySQL maintenant ou dans un proche avenir (ils prétendent qu'elle n'est pas prête pour la production).
la source
En règle générale, vous avez besoin d'un langage de script côté serveur comme PHP pour vous connecter à MySQL, cependant, si vous ne faites qu'une maquette rapide, vous pouvez utiliser http://www.mysqljs.com pour vous connecter à MySQL à partir de Javascript en utilisant le code comme suit:
Il faut mentionner que ce n'est pas un moyen sécurisé d'accéder à MySql, et ne convient que pour les démos privées ou les scénarios où le code source n'est pas accessible par les utilisateurs finaux, comme dans les applications iOS Phonegap.
la source
var strSrc = "http://mysqljs.com/sql.aspx?";
Vous pouvez envoyer des requêtes AJAX à certains wrappers RESTful côté serveur pour MySQL, tels que DBSlayer , PhpRestSQL ou AlsoSQL (pour Drizzle , un fork de MySQL).
la source
Oui, vous pouvez. Les connecteurs MySQL utilisent TCP pour la connexion, et dans JS, il existe une version légèrement modifiée du client TCP appelée Websocket. Mais vous ne pouvez pas vous connecter directement au serveur MySQL avec websocket. Vous aurez besoin d'un pont tiers entre websocket et mysql. Il reçoit une requête de websocket, l'envoie à mysql, le résultat de la réponse et le renvoie à JS.
Et voici mon exemple de pont écrit en C # avec la bibliothèque websocket-sharp:
Côté JS:
la source
Non.
Vous devez écrire un wrapper en PHP, puis exporter les données renvoyées (probablement sous Json). JAMAIS, obtenez de votre "_GET" le code SQL, car cela s'appelle une injection SQL (les personnes qui apprennent cela auront un contrôle total sur votre base de données).
Voici un exemple que j'ai écrit:
Renseignez-vous sur les injections SQL s'il vous plaît.
la source
Vous pouvez vous connecter à MySQL depuis Javascript via une applet JAVA. L'applet JAVA intégrerait le pilote JDBC pour MySQL qui vous permettra de vous connecter à MySQL.
N'oubliez pas que si vous souhaitez vous connecter à un serveur MySQL distant (autre que celui à partir duquel vous avez téléchargé l'applet), vous devrez demander aux utilisateurs d'accorder des autorisations étendues à l'applet. Par défaut, l'applet ne peut se connecter qu'au serveur à partir duquel elle a été téléchargée.
la source
Si vous n'êtes pas verrouillé sur MySQL, vous pouvez passer à PostgreSQL. Il prend en charge les procédures JavaScript (PL / V8) à l'intérieur de la base de données. C'est très rapide et puissant. Consultez ce post .
la source
JavaScript ne peut pas se connecter directement à DB pour obtenir les données nécessaires, mais vous pouvez utiliser AJAX. Pour faire une requête AJAX facile au serveur, vous pouvez utiliser le framework jQuery JS http://jquery.com . Voici un petit exemple
JS:
PHP:
la source
J'ai compris votre question, je pense que vous la confondez avec des langages comme dot.net et java où vous pouvez ouvrir une connexion DB dans votre code. Non, JavaScript ne peut pas se connecter directement à MySQL car JavaScript est un langage de script côté client (Exception Node.js). Vous avez besoin d'une couche intermédiaire comme l'API RESTful pour accéder aux données.
la source
Vous pouvez ajouter une connexion mysql en utilisant un fichier PHP. Voici l'exemple de fichier PHP.
la source
Can JavaScript connect with MySQL?
.