FrenchTech SAAS
33.5K views | +5 today
FrenchTech SAAS
Les news de l'univers SAAS et FrenchTech
Curated by Mickael Ruau
Your new post is loading...
Your new post is loading...

Popular Tags

Scooped by Mickael Ruau
September 1, 2013 8:16 AM
Scoop.it!

Adam Machanic : Anti-Patterns and Malpractices, Volume 1: Tumbling Data

Adam Machanic : Anti-Patterns and Malpractices, Volume 1: Tumbling Data | FrenchTech SAAS | Scoop.it
"Lonely but free I'll be found Drifting along with the tumbling tumbleweeds" - Supremes, "Tumbling Tumble Weeds" Welcome to the first installment of what I hope will be a regular feature on this blog, Anti-Patterns and Malpractices.
Mickael Ruau's insight:

The topic du jour is the Tumbling Data Anti-Pattern, a name coined by my friend Scott Diehl. Much like the tumbleweed lazily blowing around in the dust, data which exhibits this pattern is slowly and painstakingly moved from place to place, gaining little value along the way.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:12 AM
Scoop.it!

T-SQL Anti-pattern of the day: UPPER() and LOWER() - Esoteric - Site Home - MSDN Blogs

T-SQL Anti-pattern of the day: UPPER() and LOWER() - Esoteric - Site Home - MSDN Blogs | FrenchTech SAAS | Scoop.it
SQL Server and Debugging tips and tricks
Mickael Ruau's insight:

This one is even more common and therefore has a high impact: the usage of the above functions in WHERE clause predicates. I've examined each in some detail below.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:04 AM
Scoop.it!

T-SQL Anti-pattern of the day: 'all-in-one' queries - Esoteric - Site Home - MSDN Blogs

T-SQL Anti-pattern of the day: 'all-in-one' queries - Esoteric - Site Home - MSDN Blogs | FrenchTech SAAS | Scoop.it
SQL Server and Debugging tips and tricks
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:02 AM
Scoop.it!

The power of the Cross Join

Many SQL books and tutorials recommend that you “avoid cross joins” or “beware of Cartesian products” when writing your SELECT statements, which occur when you don't express joins between your tables.  It’s true that you need to ensure that your join conditions are adequately stated so that you don’t accidentally produce this effect, but it is not true that you should avoid these types of joins in every situation.

Cross Joins produce results that consist of every combination of rows from two or more tables.  That means if table A has 3 rows and table B has 2 rows, a CROSS JOIN will result in 6 rows.  There is no relationship established between the two tables – you literally just produce every possible combination.

The danger here, of course, is that if you have table A with 10,000 rows and Table B with 30,000 rows, and you accidentally create the product of these two tables, you will end up with a 300,000,000 row result -- probably not a good idea.  (Though it is great for creating test data and the like.)

So, how can this ever be useful?  Actually, if you do lots of report writing in SQL, a CROSS JOIN can be your best friend.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:01 AM
Scoop.it!

Better Alternatives to a FULL OUTER JOIN

As many of you know, I strongly recommend that you avoid using RIGHT OUTER JOINs, since they make your SQL code less readable and are easily rewritten as LEFT OUTER JOINs.  In addition, I have yet to find a situation where a FULL OUTER JOIN makes sense or is necessary -- I have found that in just about every case other techniques work better. (Feel free to suggest some FULL OUTER JOIN situations in the comments and we can discuss)

Let's take a common situation where you need to "merge" the data from two tables, and rows may or may not exist in either table.  For example, suppose we have budgets in one table and actuals in another and we wish to present them side by side. Many people would use a FULL OUTER JOIN to accomplish this

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 7:51 AM
Scoop.it!

Comment répliquer une table entre Oracle et MySQL avec Oracle Streams ? (Partie 1)

Comment répliquer une table entre Oracle et MySQL avec Oracle Streams ? (Partie 1) | FrenchTech SAAS | Scoop.it
J'ai cherché une idée pour partager mes 3 blogs à travers le même sujet... Le voici: "Comment répliquer une table entre Oracle et MySQL avec Streams ?". Ce que je propose, c'est donc d'aborder dans...
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:50 AM
Scoop.it!

Optimizing Queries with Explain

Optimizing Queries with EXPLAIN http://bit.ly/LTsbuJ Sheeri Cabral Senior DB Admin/Architect, Mozilla
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:36 AM
Scoop.it!

New features-in-mariadb-and-mysql-optimizers

Sergei Petrunia, MariaDBNew featuresin MariaDB/MySQLquery optimizer
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:32 AM
Scoop.it!

Understanding query-execution806

Understanding Query Execution Jay Pipes Community Relations Manager, North America
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:29 AM
Scoop.it!

My SQL Idiosyncrasies That Bite OTN

Title MySQL Idiosyncrasies that BITE OTN LAD Tour 2010 S
Mickael Ruau's insight:

Les particularités de MySql par-rapport aux SGBD tels qu'Oracle.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:24 AM
Scoop.it!

56 Query Optimization

Learn How MySQL 5.6 Makes Query Optimization Easier Jaime Crespo Percona Technical Webinars March 15, 2013
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:23 AM
Scoop.it!

How to Design Indexes, Really

MySQL users commonly ask: Here's my table, what indexes do I need? Why aren't my indexes helping me? Don't indexes cause overhead? This talk gives you some p
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:20 AM
Scoop.it!

MySQL Query And Index Tuning

MySQL Query & Index Tuning Keith Murphy MySQL DBA - iContact, Inc Editor of MySQL Magazine @ http://www.paragon-
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:15 AM
Scoop.it!

T-SQL Anti-pattern of the day: Prefix codes stored in (n)varchar fields - Esoteric - Site Home - MSDN Blogs

T-SQL Anti-pattern of the day: Prefix codes stored in (n)varchar fields - Esoteric - Site Home - MSDN Blogs | FrenchTech SAAS | Scoop.it
SQL Server and Debugging tips and tricks
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:05 AM
Scoop.it!

Developer Notepad: Sql AntiPatterns: comment éviter les pièges de la programmation de base de données

Developer Notepad: Sql AntiPatterns: comment éviter les pièges de la programmation de base de données | FrenchTech SAAS | Scoop.it

Voici une suggestion de lecture pour tous les développeurs devant travailler avec un moteur SQL.

"SQL Antipatterns: Avoiding the Pitfalls of Database Programming" est un livre plutôt amusant dans le sens ou il n'essaye pas de vous dire ce qu'il faut faire de bien mais présente les conséquences des erreurs que d'autres ont déjà eu l'occasion de faire avant vous.


Mickael Ruau's insight:

Traduction de la description de l'auteur: 
La plupart des développeurs ne sont pas des experts en SQL, et la plupart des requêtes SQL utilisées ne sont pas efficaces, difficile à maintenir, et quelque-fois totalement erronées. Ce livre vous présente toutes les erreurs courantes, et vous guide ensuite vers les meilleurs solutions. De plus, ce livre vous présente  ce qui est caché derrière ces solutions, ainsi, vous apprenez beaucoup au sujet des bases de données relationnelle tout au cours de ce livre.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:03 AM
Scoop.it!

T-SQL Anti-pattern of the day: comparing DATETIME field with date-only literal - Esoteric - Site Home - MSDN Blogs

T-SQL Anti-pattern of the day: comparing DATETIME field with date-only literal - Esoteric - Site Home - MSDN Blogs | FrenchTech SAAS | Scoop.it
SQL Server and Debugging tips and tricks
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:01 AM
Scoop.it!

Using GROUP BY to avoid self-joins

Sometimes, it appears that a necessary solution to common SQL problems is to join a table to itself.   While self-joins do indeed have their place, and can be very powerful and useful, often times there is a much easier and more efficient way to get the results you need when querying a single table.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 8:00 AM
Scoop.it!

Be Careful When Mixing INNER and OUTER Joins

Be Careful When Mixing INNER and OUTER Joins | FrenchTech SAAS | Scoop.it

I had previously written about the danger of Criteria on Outer Joins, but recently another situation popped up that occasionally causes confusion with OUTER JOINS that I thought I might address.  The issue is when you have multiple tables joined in a single SELECT, and you mix OUTER and INNER JOINS together.  The end result doesn't always seem to "work", and it can be tricky to understand exactly why and how to fix it without incurring additional unintended side effects.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:55 AM
Scoop.it!

MySQL/MariaDB query optimizer tuning tutorial from Percona Live 2013

Advanced query optimizertuning and analysisSergei PetruniaTimour KatchaounovMonty Program AbMySQL Conference And Expo 2013
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:49 AM
Scoop.it!

MySQL Sandbox - A toolkit for laziness

MySQL Sandbox presented at the MySQL user Group in San Francisco
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:33 AM
Scoop.it!

Explain

Just about anyone can write a basic SQL query for a table. Not everyone can write a good query though - that takes practice and knowing how to understand what t
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:32 AM
Scoop.it!

About Percona PAM Authentication Plugin for MySQL — Percona PAM authenticatino plugin for MySQL Documentation

About Percona PAM Authentication Plugin for MySQL — Percona PAM authenticatino plugin for MySQL Documentation | FrenchTech SAAS | Scoop.it

Percona PAM Authentication Plugin is a free and Open Source implementation of the MySQL’s authentication plugin. This plugin acts as a mediator between the MySQL server, the MySQL client, and the PAM stack. The server plugin requests authentication from the PAM stack, forwards any requests and messages from the PAM stack over the wire to the client (in cleartext) and reads back any replies for the PAM stack.

Mickael Ruau's insight:

Percona offers two versions of this plugin:

Full PAM plugin called auth_pam. This plugin uses dialog.so. It fully supports the PAM protocol with arbitrary communication between client and server.Oracle-compatible PAM called auth_pam_compat. This plugin uses mysql_clear_passwordwhich is a part of Oracle MySQL client. It also has some limitations, such as, it supports only one password input. You must use “-p” option in order to pass the password to auth_pam_compat.

These two versions of plugins are physically different. To choose which one you want used, you must use IDENTIFIED WITH ‘auth_pam’ for auth_pam, and IDENTIFIED WITH ‘auth_pam_compat’ for auth_pam_compat.

No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:27 AM
Scoop.it!

Percona Live 2012PPT:mysql-security-privileges-and-user-management

Percona Live 2012PPT:mysql-security-privileges-and-user-management
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:24 AM
Scoop.it!

Sql Injection Myths and Fallacies

The most massive crime of identity theft in history was perpetrated in 2007 by exploiting an SQL Injection vulnerability. This issue is one of the most common
No comment yet.
Scooped by Mickael Ruau
September 1, 2013 5:22 AM
Scoop.it!

PHP tips by a MYSQL DBA

Talk was given by Shantanu Oak in phpcamp pune
No comment yet.