Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Здравствуйте, прошу помощи у знающих людей, с SQL столкнулся впервые, нужно обновить даты, буду вам очень признателен, если подскажете как правильно составить запрос.
Обновить нужно даты в столбце "Finish" обновленные даты у меня в экселевском документе, идут по тому же порядку как и в SQL необходимо их туда каким то образом вставить, ctrl + V неактивна, судя по всему нужно вставлять при помощи запроса, но я к сожалению не знаю как его составить. Логика подсказывает - Создать сценарий для таблицы - Используя UPDATE - Новое окно редактора запросов. Появляется окно с функцией UPDATE, в нем прописаны все столбцы таблицы, а дальше что делать ума не приложу, подскажите добрые люди, очень надо! Спасибо.

К сообщению приложен файл. Размер - 149Kb
27 сен 13, 23:13    [14895422]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Функция UPDATE, я полагаю сам запрос нужно писать здесь?

К сообщению приложен файл. Размер - 139Kb
27 сен 13, 23:17    [14895439]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexp21
Функция UPDATE, я полагаю сам запрос нужно писать здесь?
Нет, это пункт меню для генерации шаблона UPDATE

Можно им воспользоваться, но можно и просто написать запрос в окне Query
27 сен 13, 23:42    [14895495]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexp21
Обновить нужно даты в столбце "Finish" обновленные даты у меня в экселевском документе, идут по тому же порядку как и в SQL необходимо их туда каким то образом вставить, ctrl + V неактивна, судя по всему нужно вставлять при помощи запроса, но я к сожалению не знаю как его составить.
Например, можно визардом вставить данные из экселя в новую таблицу в MSSQL, потом написать этот самый UPDATE

Связывать поля "по порядку" нельзя, нужно какое то поле для связывания.
В крайнем случае, можно сделать поле "порядок".

ИМХО тут вам понадобится программист :-(
27 сен 13, 23:45    [14895501]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Визардом к сожалению нет возможности перенести данные, можно ли их сформировать с помощью запроса? я не программист, но если пошагово объясните или пример какой покажите, думаю справлюсь!
28 сен 13, 00:04    [14895544]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexp21
Визардом к сожалению нет возможности перенести данные, можно ли их сформировать с помощью запроса?
Эээ, а почему нет возможности?

Обращаться с запросами к экселю не так просто, вы же понимаете, что как минимум файл должен быть на сервере...

Поищите тут на форуме по словам "excel openrowset" или "импорт из excel", почитайте.
https://www.sql.ru/forum/afsearch.aspx?s=excel openrowset&submit=?????&bid=1
28 сен 13, 21:31    [14897385]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexeyvg
Поищите тут на форуме по словам "excel openrowset" или "импорт из excel", почитайте.
https://www.sql.ru/forum/afsearch.aspx?s=excel openrowset&submit=?????&bid=1
Лучше даже "excel OPENDATASOURCE"
28 сен 13, 21:32    [14897391]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
При попытки экспорта/импорта, еще на этапе формирования пути визард выдает ошибку и закрывается, я могу просто вставить эти данные из экселя путем копирования в запрос, вопрос в том есть ли такая возможность в SQL, и как должен выглядеть такой запрос?
28 сен 13, 22:28    [14897604]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexp21
При попытки экспорта/импорта, еще на этапе формирования пути визард выдает ошибку и закрывается
Прочитайте сообщение об ошибке.
alexp21
я могу просто вставить эти данные из экселя путем копирования в запрос, вопрос в том есть ли такая возможность в SQL, и как должен выглядеть такой запрос?
Есть запросы на добавление данных, в принципе можно извратиться, и проеобразовать некий текст (в частности, скопированный из экселя) в формат такого запроса. Но это наверняка вам будет сделать сложнее, чем прочитать сообщение об ошибке.
28 сен 13, 22:43    [14897687]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
к сожалению компьютер на работе, сейчас дословно Вам не скажу, вылезает маленькое окошко, написано, Неизвестная (Неустранимая или как то так) ошибка и три кнопки повторить пропустить и прервать, при нажатии на любую визард просто закрывается, в этом окне нет ни описаний ни чего больше.
Мне будет проще именно запросом! Расскажите пожалуйста как сделать.
28 сен 13, 22:52    [14897734]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2415
alexp21,

"идут по тому же порядку как и в SQL"

без конструкции ORDER BY , запрос выдает данные в случайном порядке

судя по всему вам будет проще нанять специалиста
30 сен 13, 09:53    [14899804]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31962
alexp21
Мне будет проще именно запросом! Расскажите пожалуйста как сделать.
Каким запросом то? Вам уже предложили разные варианты - какой вы всё таки выбрали?

Ну и когда выберите, изучайте, задавайте вопросы. Мы же не пишем тут программы за специалистов, это они должны делать сами, а тут только помогают.
Если вы совсем не программист, то может вам и не имеет смысла всё это дело изучать, непропорционально большие затраты получаются.
30 сен 13, 09:58    [14899814]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
StarikNavy
alexp21,

"идут по тому же порядку как и в SQL"

без конструкции ORDER BY , запрос выдает данные в случайном порядке


Связать обновленные значения "Finish" можно со значениями из столбца "GroupID" (на рис.1 видно, он идет слева, через один от выделенного "Finish"), Скопировать и вставить значения "GroupID" и "Finish" в SQL запрос я смогу, мне лишь нужно понять как должен выглядеть этот запрос и где именно в программе его нужно вводить, что бы программа поняла что я хочу обновить эти значения в столбце "Finish". Если вам не трудно, покажите пожалуйста пример такого запроса, данные "GroupID" и обновленные значения "Finish" я выложил в прикрепленном файле. Спасибо.

К сообщению приложен файл (Книга1.xlsx - 8Kb) cкачать
30 сен 13, 12:21    [14900655]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
alexeyvg
Каким запросом то? Вам уже предложили разные варианты - какой вы всё таки выбрали?


Спасибо Вам за отклик по моему вопросу, Извините если не совсем ясно объяснил, Я имел ввиду Запрос на добавление данных преобразованный из текста, о котором Вы упоминали выше.

alexeyvg
Есть запросы на добавление данных, в принципе можно извратиться, и проеобразовать некий текст (в частности, скопированный из экселя) в формат такого запроса.


Насколько я понял есть возможность, обновить данные путем вставки новых значений непосредственно в SQL запрос, в предыдущем посте я выложил файл с новыми данными для столбца "Finish" и значениями "GroupID" по которым эти данные можно связать. Буду Вам очень признателен если на примере покажите как правильно составить такой запрос и где в программе его нужно прописать, чтобы обновить эти значения для "Finish". Спасибо.
30 сен 13, 12:38    [14900773]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104751
alexp21
Насколько я понял есть возможность, обновить данные путем вставки новых значений непосредственно в SQL запрос,

Импортируйте ваш Excel в таблицу. И потому же напишите запрос
30 сен 13, 12:41    [14900791]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Glory
alexp21
Насколько я понял есть возможность, обновить данные путем вставки новых значений непосредственно в SQL запрос,

Импортируйте ваш Excel в таблицу. И потому же напишите запрос


К сожалению я не могу импортировать данные из Экселя, Выдает ошибку, выше я описывал эту проблему, мне необходимо обновить данные именно с помощью SQL запроса, путем вставки данных копированием из Экселя в непосредственно SQL запрос, если можно пришлите пример такого запроса с моими данными, и где именно в программе этот запрос нужно вводить. Спасибо.

К сообщению приложен файл (Книга1.xlsx - 8Kb) cкачать
30 сен 13, 12:54    [14900872]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104751
alexp21
мне необходимо обновить данные именно с помощью SQL запроса, путем вставки данных копированием из Экселя в непосредственно SQL запрос,

Вот пример

select 1 as f1, 'aaa' as f2
union all
select 2 as f1, 'bbb' as f2
union all
select 3 as f1, 'ccc' as f2

повторить столько раз, сколько строк в вашем файле
30 сен 13, 12:57    [14900903]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Glory
alexp21
мне необходимо обновить данные именно с помощью SQL запроса, путем вставки данных копированием из Экселя в непосредственно SQL запрос,

Вот пример

select 1 as f1, 'aaa' as f2
union all
select 2 as f1, 'bbb' as f2
union all
select 3 as f1, 'ccc' as f2

повторить столько раз, сколько строк в вашем файле



Спасибо, но я к сожалению столкнулся в SQL впервые и не очень хорошо разбираюсь в этой программе, не могли бы вы по шагам объяснить где именно нужно вводить этот запрос!
В вашем примере значения 'aaa', 'bbb', 'ccc' насколько я понимаю сюда нужно прописывать обновленные даты для столбца "Finish"?
Обновятся даты в том порядке в котором они записаны в таблице? те. связывать их с другим значением не надо?
Просто в предыдущем посте StarikNavy писал что:
StarikNavy
без конструкции ORDER BY , запрос выдает данные в случайном порядке
30 сен 13, 13:07    [14900973]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104751
alexp21
Спасибо, но я к сожалению столкнулся в SQL впервые и не очень хорошо разбираюсь в этой программе, не могли бы вы по шагам объяснить где именно нужно вводить этот запрос!

В окне запросов на ваших скриншотах

alexp21
В вашем примере значения 'aaa', 'bbb', 'ccc' насколько я понимаю сюда нужно прописывать обновленные даты для столбца "Finish"?

Нет. ВСЕХ столбцов из excel

alexp21
Обновятся даты в том порядке в котором они записаны в таблице? те. связывать их с другим значением не надо?

Этот запрос еще ничего не обновляет
30 сен 13, 13:16    [14901029]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
[quot Glory]
alexp21
Этот запрос еще ничего не обновляет


Если вам не трудно пришлите пожалуйста Пример запроса для обновления данных в столбце "Finish", с моими данными (файл в прикреплении) и скажите где именно в программе нужно будет ввести этот запрос. Буду вам очень признателен за помощь. Спасибо.

К сообщению приложен файл (Книга1.xlsx - 8Kb) cкачать
30 сен 13, 13:38    [14901252]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104751
alexp21
Если вам не трудно пришлите пожалуйста Пример запроса для обновления данных в столбце "Finish", с моими данными (файл в прикреплении) и скажите где именно в программе нужно будет ввести этот запрос. Буду вам очень признателен за помощь. Спасибо.

В вашем файле 17 записей
Напишите 17 команд UPDATE с явно заданным условиями для каждой записи
30 сен 13, 13:57    [14901476]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
Glory
alexp21
Если вам не трудно пришлите пожалуйста Пример запроса для обновления данных в столбце "Finish", с моими данными (файл в прикреплении) и скажите где именно в программе нужно будет ввести этот запрос. Буду вам очень признателен за помощь. Спасибо.

В вашем файле 17 записей
Напишите 17 команд UPDATE с явно заданным условиями для каждой записи


Записей всего полторы тысячи, 17 я выложил для примера, Вы понимаете я в первый раз столкнулся с SQL, до этого момента я даже не знал о ее существовании, И я понятия не имею как написать Команды с явно заданными условиями, для этого я собственно на форум и обратился за помощью, и уже раз пятый наверное прошу Дать мне конкретный пример с моими данными, чтобы я потом по аналогии мог сделать это для всей таблицы! Если у вас нет возможности/желания помочь именно конкретным примером, так чтобы новичку было понятно что и как делать, давайте не будем засорять тему бесполезными сообщениями и дадим такую возможность людям действительно желающим помочь.
30 сен 13, 14:27    [14901748]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
Glory
Member

Откуда:
Сообщений: 104751
alexp21
и уже раз пятый наверное прошу Дать мне конкретный пример с моими данными,

С какими "вашими данными" ?
У вас какой то _внешний_ файл
А для запроса все данные должны быть в базе.

alexp21
давайте не будем засорять тему бесполезными сообщениями и дадим такую возможность людям действительно желающим помочь.

Ага. Я ничего не знаю об SQL, но все знаю о полезности и бесполезности.
30 сен 13, 14:30    [14901778]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
StarikNavy
Member

Откуда: Москва
Сообщений: 2415
alexp21,

"Записей всего полторы тысячи"
значит, в случае "ручного" ввода, вам надо будет написать 1,5 тысячи строчек
(простым "скопировать-вставить" это не получится)

значит, если вы по прежнему упорствуете, и не хотите нанимать специалиста, вам все таки придется
1) разобраться с экспортом внешнего файла в базу данных
(приводите текст ошибки)
2) научиться программировать "по примерам"

пример команды инсерт
http://msdn.microsoft.com/ru-ru/library/ms174335.aspx
пример команды update
http://msdn.microsoft.com/ru-ru/library/ms177523.aspx
30 сен 13, 14:45    [14901906]     Ответить | Цитировать Сообщить модератору
 Re: Обновление данных в одном из столбцов таблицы  [new]
alexp21
Member

Откуда:
Сообщений: 26
StarikNavy

Я не упорствую, я просто хочу попробовать изменить данные с помощью способа который предложил Ваш коллега alexeyvg

alexeyvg
Есть запросы на добавление данных, в принципе можно извратиться, и проеобразовать некий текст (в частности, скопированный из экселя) в формат такого запроса.


Если вам не трудно, составьте пожалуйста такой запрос хотя бы для 2х записей (допустим для 9 и 10 строки) и расскажите пошагово как нужно будет выполнить этот запрос (куда именно нажать чтоб появилось окно ввода этого запроса, сам запрос полностью, скопировав который из вашего примера и вставив у себя в SQL и выполнив его, у меня бы обновились данные в 9 и 10 строке в столбце "Finish"), мне это очень надо! Буду Вам очень благодарен за помощь.

К сообщению приложен файл (Книга1.xlsx - 8Kb) cкачать
30 сен 13, 15:31    [14902218]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить