2013-08-01 2 views
-1

Иногда может возникнуть необходимость в поведении в столбце datatype.Проблема с типом данных столбца mysql для неправильного ввода

Если я вставляю данные из более чем четырех цифр в столбец TINYINT, он вставляет 255 с предупреждением о превышении допустимого диапазона.

Если я хочу UPDATE или INSERT значение строки в столбце FLOAT это 0.

Но когда я пытаюсь изменить отрицательное число в unsigned datatype, запрос не является выполнение.

Мой вопрос, почему бы не прекратить запрос, если не соответствует datatype все время. есть идея прекратить запросы на подобные ситуации?

+7

Правильно проверить свои данные перед отправкой его в базу данных? В руководстве четко указано, каковы ограничения каждого типа данных, если вы пытаетесь вставить в него неправильные данные, вы должны сначала проверить данные. – Prix

ответ

1

Для этого вам необходимо вручную добавить проверку ошибок с помощью языка программы, который вы используете. Так как только данные собираются в базу данных, она «запрашивается»

Пример способ do error check with PHP:

<?php 
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world"); 

    /* check connection */ 
    if ($mysqli->connect_errno) { 
     printf("Connect failed: %s\n", $mysqli->connect_error); 
     exit(); 
    } 

    if (!$mysqli->query("SET a=1")) { 
     printf("Errormessage: %s\n", $mysqli->error); 
    } 

    /* close connection */ 
    $mysqli->close(); 
    ?> 

надеюсь, что это помогает :)

+0

спасибо. но вы не знаете, какой язык программирования я использую? – Imran

+1

@coder, вы можете добавить это в свой вопрос. –

Смежные вопросы