Les partenaires publicitaires:

MySQL Entier: Vs. Signé Unsigned

Le système de base de données MySQL fournit aux développeurs une gamme de types de données numériques à choisir, y compris divers types entiers. La plage de valeurs que vous pouvez stocker dans une base de données en utilisant des entiers dépend si les valeurs sont signés ou non signé. Signées et des entiers non signés sont également représentés légèrement différente dans les instructions SQL. Lorsque les développeurs effectuent des opérations arithmétiques dans MySQL, les résultats peuvent être signées ou non, selon les circonstances.

  1. Déclarations

    • Lorsque les développeurs créent des tables dans une base de données MySQL, ils précisent le type de données pour chaque colonne. Lors de la déclaration d'une colonne avec un type entier, un développeur peut opter pour spécifier si oui ou non il est signé. L'exemple de code suivant illustre une déclaration MySQL pour créer une table avec deux colonnes entières en elle:

      CREATE TABLE objets (
      num_data unsigned int
      other_num INT SIGNÉ) -




      La valeur par défaut est pour les colonnes de type entier qui seront signés, afin que les développeurs ne tendent à indiquer colonnes qu'ils veulent être unsigned utilisant ces attributs. L'utilisation de la "signé" attribut n'a aucun effet, bien que les développeurs choisissent parfois de l'utiliser pour faire leur code clair. La première colonne de cette table stocke des entiers non signés, tandis que le second peut stocker des valeurs à la fois positives et négatives.

    • Plage de valeurs

      • Si une colonne dans une table MySQL utilise des valeurs entières, la plage de valeurs possibles dépendra des chiffres si oui ou non la colonne supporte signé. Par exemple, le type de TINYINT dans MySQL peut contenir des valeurs non signées entre zéro et 255, mais peut contenir des valeurs signé entre -128 et 127. Les développeurs ont donc besoin d'examiner si oui ou non une colonne va stocker des nombres signés lors du choix d'un type numérique qui va soutenir un large éventail de valeurs assez pour une application.

      Types Entier

      • Ainsi que d'avoir la possibilité d'utiliser les numéros signé ou non, les développeurs peuvent choisir entre différents types de nombre entier. Celles-ci vont de la taille en termes de valeurs prises en charge, avec le plus petit type étant TINYINT et le plus grand BIGINT. Entre ceux-ci, dans l'ordre croissant sont SMALLINT, MEDIUMINT et INT. Le type choisi détermine le nombre d'octets MySQL va allouer pour chaque valeur dans une colonne. Les développeurs peuvent également choisir d'indiquer le nombre de bits qu'ils souhaitent MySQL pour stocker par valeur entière.

      Opérations

      • Lorsque des applications Web utilisent bases de données MySQL, ils peuvent utiliser le système pour effectuer des opérations arithmétiques ainsi que la mise à jour des données et d'interrogation. Quand une application utilise des calculs, les résultats seront signées ou non en fonction des types de données dans les colonnes concernées. Par exemple, en fonction de la configuration dans un système particulier, une opération de soustraction peut entraîner un résultat non signé, même lorsque l'un des opérandes est signé. Cela peut entraîner des résultats imprévisibles dans certains cas.

    » » » » MySQL Entier: Vs. Signé Unsigned