|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
||||
|
||||
String or binary data would be trancated
такая проблема: то, что ввожу в edit, записываю в таблицу. При этом возникает ошибка: String or binary data would be trancated. Типа поля integer, размер 4.
Причём размер поля не привышаю, т.е. ввожу хоть один символ - всё равно ошибка. Помогите, пожалуйста, что делать? Нуб в Delphi Прошу проникнуться. |
#2
|
|||
|
|||
Цитата:
Уточните как происходит запись в базу. Почему символ? Вы пытаетесь в Integer (число) записать символ? При нажатии на кнопку? Table1.Edit; Table1.FieldByName('FieldInteger').AsInteger := StrToInt(Edit1.Text); Table1.Post; |
#3
|
||||
|
||||
P - пароль в таблице с клиентами. Делаю так.
Var P: Integer; begin (при проверке на наличие клиента с таким же паролем всё работает. Запись в базу выдаёт ошибку.) ... ADOQuery1.SQL.Clear; ADOQuery1.SQL.Text:=('Insert INTO Customers (LastName, FirstNam... ...Pass) values ('''+ Edit1.Text +''', ''' + Edit2.Text +'''...'''+Edit6.Text+''')'); ADOQuery1.ExecSQL; Нуб в Delphi Прошу проникнуться. |
#4
|
|||
|
|||
по моему в кавычки значение пароля заключать не надо, а надо преобразовывать к инт, но могу и ошибаться
|
#5
|
||||
|
||||
Очень хочется сделать вот так
ADOQuery1.SQL.Text:=('Insert INTO Customers (LastName, FirstNam... ...Pass) values ('''+ Edit1.Text +''', ''' + Edit2.Text +'''...StrToInt(Edit6.Text))'); но тут тоже какая-то ошибка. Нуб в Delphi Прошу проникнуться. |
#6
|
|||
|
|||
уж тогда весь запрос напиши, скорее вего синтаксис где то нарушен
|
#7
|
|||
|
|||
Цитата:
Правильно, ошибку будет выдавать. Вы число в строку пытаетесь засунуть (IntToStr(Edit6.Text)). Нужно так: ADOQuery1.SQL.Text:=('Insert INTO Customers (LastName, FirstNam... ...Pass) values ('''+ Edit1.Text +''', ''' + Edit2.Text +'''...Edit6.Text)'); Также смотря какая база, нужно либо одинарную кавычку, либо двойную использовать, попробуйте заменить. |
#8
|
|||
|
|||
Pass у нее целое, потому кавычки не надо
|
#9
|
||||
|
||||
запрос такой:
Код:
ADOQuery1.SQL.Clear; ADOQuery1.SQL.Text:=('Insert INTO Customers (LastName, FirstName, Par, Gender, City, Year, HomePhone, Handy, Pass) values ('''+ Edit1.Text +''', ''' + Edit2.Text +''', '''+ Edit3.Text +''', '''+ComboBox1.Text+''', '''+Edit4.Text+''','''+Edit5.Text+''', '''+MaskEdit2.Text+''', '''+ MaskEdit1.Text +''', '''+Edit6.Text+''')'); ADOQuery1.ExecSQL; Admin: Пользуемся тегами! Нуб в Delphi Прошу проникнуться. Последний раз редактировалось Admin, 23.05.2008 в 19:15. |
#10
|
|||
|
|||
какие поля НЕ СТРОКИ?
попробуй вот что не строковые поля не заключать значения в кавычки а преобразовывать к типу поля, проверь длины строк также, чтобы в edit-ах ограниченно размером поля было |