Procédures stockées

  • SpooF
  • ٩๏̯͡๏۶
  • Bronze Member
  • Avatar de l’utilisateur
  • Inscription: Mai 22, 2004
  • Messages: 3415
  • Loc: Richland, WA
  • Status: Offline

Message Décembre 27th, 2010, 9:11 am

Im travaillant sur un nouveau projet avec un de mes amis et nous avons commencé à parler de notre base de données. Ive jamais suivi de cours formels et il est intéressant de concevoir une base de données avec lui que hes pris quelques-uns. Nous avons obtenu sur l'objet de procédures stockées. Ses professeurs l'ont percé dans la tête à les utiliser le plus possible. Hes toujours l'esprit ouvert pour eux et Ive jamais utilisé personnellement.

J'ai commencé à faire de la lecture et il semble que beaucoup de theres de contravery pour eux.

Quelqu'un d'autre a travaillé avec des procédures stockées et ce qui est votre opinon personnelle sur le moment de les utiliser par rapport à SQL dynamique écrit dans la demande?

Un avantage que je vois avec les procédures de sauvegarde, c'est que si votre application cliente ne va pas toujours être up-to-date. Changez votre struchure table pourrait briser une demande, donc l'utilisation proecdures magasin, vous pouvez modifier vos tables et toujours leur donner les mêmes données au client.

Puisque ce projet est basé sur le Web les mises à jour et à le «client» est le contrôle complet à travers nous et pas de mises à jour doivent être installées, je ne vois pas beaucoup de raisons de les utiliser. Je n'ai pas à vous soucier d'une application cliente de rupture si je change le struchure de la base de données, parce que je peux simplement mettre à jour l'application.
#define NULL (::rand() % 2)
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Décembre 27th, 2010, 9:11 am

  • PolishHurricane
  • Mastermind
  • Mastermind
  • Avatar de l’utilisateur
  • Inscription: Fév 17, 2005
  • Messages: 1585
  • Status: Offline

Message Janvier 7th, 2011, 11:30 am

NE PAS LES UTILISER. Ils sont l'enfer. Un administrateur de base de données ou de celui qui a des connaissances limitées dans d'autres choses que les bases de données comme par opposition à des scripts ou des réseaux web entier peut les défendre, mais ils sont horribles.

Je me suis connecté juste pour poster mon opinion sur cette cause de la façon dont les procédures stockées ont fait beaucoup de ma vie un enfer vivant à une entreprise où je travaille qui ne le marketing d'affiliation. Depuis quelques années ils ont eu un db admin et un autre programmeur avec des connaissances limitées de créer un gigantesque labyrinthe sproc. Lorsque je travaillais pour la société comme un employé à temps plein, 50% de mon travail consistait à régler les problèmes qui ont été causés par sprocs, que ce soit des erreurs d'autorisation, écoute sprocs, etc...vous obtenez un rendement limité d'eux et ils sont durs comme l'enfer de remonter ainsi parmi beaucoup d'autres choses. Ces jours-ci inconvénients de l'utilisation thème sévèrement l'emportent sur les avantages. Heres quelques informations utiles Ive recueillies sur une courte période de temps.

Problèmes avec des procédures stockées
- http://www.tonymarston.net/php-mysql/st ... -evil.html
- Procédures stockées ne peuvent pas facilement se dérouler sur SVN (contrôle de version)
- La plupart des bases de données modernes compiler et dynamique du cache MySQL les mêmes que les procédures stockées.
- Impossible d'utiliser IN () déclarations et si vous transmettez des données sous forme de chaîne de ses plus vulnérable à l'injection MySQL.
- Ne pas utiliser IN () ne permet pas beaucoup de flexibilité de l'utilisation de boucles de requête non imbriquée.
- Modifications de SQL requiert une application tout à fait différente, la modification distincte (Prend beaucoup de temps).
- Impossible de faire des recherches massives sur les procédures stockées
- Extrêmement difficile à modifier dynamiquement requête pour faire des choses comme la boucle comme les états & exploser / valeurs du tableau passe.
- Un soutien de base de données pauvres en MySQLi - Retourne les lignes supplémentaires, des paramètres spéciaux doivent être mis en place.
- Difficile de requêtes en cache localement, car ils peuvent retourner des valeurs différentes.
- Depuis qu'ils sont définis une fois et utilisée plusieurs fois, si des modifications sont apportées à eux, ils doivent être remplacés et d'affecter les pièces TOUS les logiciels.
- Depuis qu'ils sont définis une fois et utilisé à plusieurs reprises, ils appellent généralement plus d'informations que nécessaire.
- Changements dans l'un des problèmes provoquer jouer dans d'autres
- Si vous nourrissez quelque chose sproc, beaucoup de fois vous vous retrouvez en l'appelant sans raison si la valeur est NULL
- Un grand nombre de fois, des modifications doivent être apportées à la demande quand une procédure stockée est modifiée et le plus souvent il s'agit d'une solution inefficace.
- Son peu plus difficile d'obtenir sprocs, comme difficile à gérer les filtres de sécurité sur le côté demande en constante évolution sprocs et quand il ya un trou dans la procédure stockée, la vulnérabilité est pire.

À mon avis, Im ne cherche pas à la traîne, et Im ne va probablement pas réponse en retour à ce fil; Im juste essayer de vous aider à l'homme.
There's no place like 127.0.0.1, badass part is now it's ::1

Afficher de l'information

  • Total des messages de ce sujet: 2 messages
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 101 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC