Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.08.2015, 20:59   #1
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию Как обратиться к полю

Привет всем)
БД в ms sql. Тип данных поля varchar(max). Как из делфи обратиться к нему: asstring или както иначе? Не работает locate. Когда в access поле было text, все работало.
Спасибо.
Ernest027 вне форума Ответить с цитированием
Старый 08.08.2015, 21:22   #2
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Как из делфи обратиться к нему: asstring или както иначе?
AsString да
Цитата:
Не работает locate.
какой locate пиши sql запрос
Цитата:
Тип данных поля varchar(max).
Ты док читаешь по T-SQL ? https://msdn.microsoft.com/ru-ru/lib...QL.120%29.aspx
Цитата:
nvarchar [ ( n | max ) ]

Строковые данные переменной длины в Юникоде. Параметр n определяет длину строки и должен иметь значение от 1 до 4000. Значение max указывает, что максимальный размер при хранении составляет 2^31-1 байт (2 ГБ). Размер хранилища в байтах вдвое больше числа введенных символов + 2 байта. По стандарту ISO синонимами для типа nvarchar являются типы national char varying и national character varying.
Зачем тебя это тип данных ? вот думай вам надо это тип данных ? Я пользуюсь очень недко когда его обязательно надо ... На пример для комментариев или какой то длинный текст который нельзя определить заранее сколько там симбол будет

Последний раз редактировалось xxbesoxx; 08.08.2015 в 21:30.
xxbesoxx вне форума Ответить с цитированием
Старый 08.08.2015, 21:40   #3
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

Varchar выбрал потому что не знаю заранее какой длины будет запись. Мне нужно из одной таблицы в другую копировать записи без повторов. Sql запрос не работает:
Код:
DataModule2.ADOQuery3.Close;
DataModule2.ADOQuery3.SQL.Add('insert into Oborudovanie ([Наименование единицы],[Оперативный номер], [Тип оборудования], [Заводской номер], 
                                                   [Технические характеристики], [Год выпуска])');
DataModule2.ADOQuery3.SQL.Add('select ([Наименование единицы],[Оперативный номер], [Тип оборудования], [Заводской номер], 
                                                   [Технические характеристики], [Год выпуска])');
DataModule2.ADOQuery3.SQL.Add('from OborudovanieAdd');
DataModule2.ADOQuery3.SQL.Add('where not exists');
DataModule2.ADOQuery3.SQL.Add('(select [Оперативный номер] from Oborudovanie');
DataModule2.ADOQuery3.SQL.Add('where OborudovanieAdd.[Оперативный номер] =Oborudovanie.[Оперативный номер])');
DataModule2.ADOQuery3.ExecSQL;
DataModule2.ADOQuery3.SQL.Clear;
DataModule2.ADOQuery3.SQL.Add('select * from Oborudovanie');
DataModule2.ADOQuery3.Open;
хотел попробовать методом locate

Последний раз редактировалось Stilet; 08.08.2015 в 22:09.
Ernest027 вне форума Ответить с цитированием
Старый 08.08.2015, 21:49   #4
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Ernest027
1) Тебя 10 раз сказали на предыдущие теме запрос надо заранее проверить в Management Studio и проверены запрос пользуйтесь через Delphi !!! Прошло уже неделя и вы начинайте заново .... Не работает, Не работает ................
2) Показали несколько пример !
3) дали силка на доке где все подробно написано
Если бы человек уделял в день только 1 час для того что разбирать это и потренировал .! Вы это уже знали ... Вот вам лен разбирать его и выкладывайте ваши красивый код на форуме

Последний раз редактировалось xxbesoxx; 08.08.2015 в 21:56.
xxbesoxx вне форума Ответить с цитированием
Старый 08.08.2015, 22:10   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Не работает locate.
Как это проявляется? Ошибка или просто не находит?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.08.2015, 22:17   #6
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

xxbesoxx, я искал где почитать,не нашёл. Так как я новичек,я многого не понимаю. А вы все наверно сразу все знали и понимали и вопросов никогда не возникало. Я понимаю что помочь очень тяжело или западло.

Stilet, вообще ничего не делает. В public прописал процедуру mylocate. В процедуое edit прописал где искать запись, ввожу значение,ничего не происходит.

Последний раз редактировалось Stilet; 09.08.2015 в 08:44.
Ernest027 вне форума Ответить с цитированием
Старый 08.08.2015, 22:45   #7
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
xxbesoxx, никогда не возникало.
Очень много раз... читал книга , начал разбирать самому и ПОТОМ писал на форуме если что то было не понятно
Цитата:
В public прописал процедуру mylocate. В процедуое edit прописал где искать запись,
Почему процедура в public ?
Изображения
Тип файла: jpg Private_Public.jpg (131.9 Кб, 118 просмотров)

Последний раз редактировалось xxbesoxx; 08.08.2015 в 22:51.
xxbesoxx вне форума Ответить с цитированием
Старый 08.08.2015, 22:58   #8
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

Public потому что mylocate в datamodule2 прописал,а обращаюсь с формы 11.
Подскажите в чем мой sql запрос неправильный?
Ernest027 вне форума Ответить с цитированием
Старый 08.08.2015, 23:58   #9
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Public потому что mylocate в datamodule2
Что нельзя писать из событие OnChange
Код:
 With DataModule2.ADOQuery3 do
          begin
           //.................................................
          end;
И что такой DataModule2 , ADOQuery3 и формы 11. Книга не надо читать ? или время нету ? У тебя только Оправдание что ты новичок Я не вижу от тебя что вы старайтесь что то РАЗБИРАТЬ САМОМУ !
Изображения
Тип файла: jpg 1.jpg (62.1 Кб, 122 просмотров)
Тип файла: jpg 2.jpg (112.4 Кб, 132 просмотров)

Последний раз редактировалось xxbesoxx; 09.08.2015 в 00:03.
xxbesoxx вне форума Ответить с цитированием
Старый 09.08.2015, 07:40   #10
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

Не хочешь помочь,пройди мимо. Люди сюда за помощью обращаются.
У меня нет оправданий. Да,я не читаю столько книг по программированию,Шкрыль прочитал и все. Я по своей тематике читаю.
Я спросил в чем мой sql запрос неправильный. Но я вижу что человеку западло помочь,поэтому пройди мимо.
И не будем больше засорять тему ерундой.
Спасибо.

Цитата:
2) Показали несколько пример !
Е
сли ты про это
Код:
with  DataModule2.ADOQuery3 do
begin
Close;
SQL.Clear;
SQL.Text := 'insert into Oborudovanie ([Наименование единицы],[Оперативный номер], [Тип оборудования],
                                  [Заводской номер], [Технические характеристики], [Год выпуска]'+
            'select [Наименование единицы],[Оперативный номер], [Тип оборудования], [Заводской номер],
                                 [Технические характеристики], [Год выпуска]'+
            'from OborudovanieAdd'+
            'where not exists'+
            'select * from Oborudovanie'+
            'where OborudovanieAdd.[Оперативный номер] =Oborudovanie.[Оперативный номер]'+
	    'and OborudovanieAdd.[Тип оборудования] =Oborudovanie.[Тип оборудования] '+
	    'and OborudovanieAdd.[Заводской номер] =Oborudovanie.[Заводской номер] ';
ExecSQL;
end
То твой код практически от моего ничем не отличается и тоже не работает!!!

Последний раз редактировалось Stilet; 09.08.2015 в 08:45.
Ernest027 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обратиться к USB на С# Кандибобр C# (си шарп) 6 09.10.2014 16:30
как обратиться к браузеру? gazellea Помощь студентам 0 26.06.2012 20:26
как в Delphi присвоить полю DBEdit целочисленное значение поля из DBText (как правильно )? ГОСЕАН Помощь студентам 0 10.01.2012 06:12
Как обратиться к ячейке? baddog БД в Delphi 2 30.04.2010 15:43
Как отсортировать НД по Lookup-полю? Schumacher БД в Delphi 4 21.06.2007 14:07