Diskriptor
|
|
« : 24-05-2008 16:18 » |
|
В этой теме я буду задавать вопросы, которые будут, косятся SQL. Вот первый, Удалить книги, в коде которых присутствует цифры 6 или 7 пытался вот так: 1. Delete From Books Where Quantity Like' [dfaf6] or [dfaf7]'; //Удаляет 0 строк 2. Delete From Books Where Quantity Like' 6' or' 7'; //Удаляет все строк SQL начал заниматься только вчера, как правильно указать диапазон.
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #1 : 24-05-2008 19:44 » |
|
Для чисел: DELETE FROM Book WHERE Quantity BETWEEN 6 AND 7 или для подстрок: DELETE FROM Book WHERE Quantity LIKE '%6%' OR Quantity LIKE '%7%'
|
|
« Последнее редактирование: 24-05-2008 19:46 от dimka »
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Diskriptor
|
|
« Ответ #2 : 25-05-2008 14:38 » |
|
dimka, Спасибо за помощь.
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #3 : 25-05-2008 16:11 » |
|
Diskriptor, скажи, а почему у тебя все задания какие-то разрушительные: то форматирование диска, то удаление записей?
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Diskriptor
|
|
« Ответ #4 : 25-05-2008 20:24 » |
|
dimka, Просто почему-то у меня не получается именно эти задания Вот мое Д.З. По SQL 1. Вытащить название учебников, которые издавались не издательством 'BHV', и тираж которых >= 3000 экземпляров. SELECT Press,Name,Pressrun From books Where Press <> 'BHV' and (Pressrun>=3000); 2. Вытащить книги, о дате издания которых ничего не известно. SELECT Name,Date From books Where Date is null; 3. Вытащить все книги-новинки, цена которых ниже 30р. SELECT Name, New,Price From books Where Price < 30 and New = true; 4. Вытащить книги, в названиях которых есть слово Microsoft, но нет слова Windows Четвертое зделал но корректный запрос сейчас не найду 5. Вытащить книги, у которых цена одной страницы < 10 копеек. Не успел 6. Вытащить книги, в названиях которых присутствует не менее трех цифр. SELECT Name From books Where Name Like '*#*#*#*'; 7. Удалить книги, в коде которых присутствует цифры 6 или 7. Ну и 7 ты показал, как заделать, но он у меня не отработал поскольку я забыл упомянут что я пишу запрос на SQL к базе данных Access 2003 Там синтаксис чуть другой но мне там далше преподовател подсказал А следующим шагом , будить установка Microsoft SQL Server 2000 Поможети, :)а то не когда не ставел.
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #5 : 26-05-2008 05:36 » |
|
Четвертое зделал но корректный запрос сейчас не найду Так надо не искать, надо писать А для этого надо знать синтаксические конструкции. Всё нужное для запроса ты знаешь, осталось это применить. Ну и 7 ты показал, как заделать, но он у меня не отработал поскольку я забыл упомянут что я пишу запрос на SQL к базе данных Access 2003 Там синтаксис чуть другой но мне там далше преподовател подсказал Не рассказывай сказок. Я выдал решение, синтаксис которое поддерживается практически любой реляционной СУБД. Access точно поддерживает. Если оно не работает, значит либо ты неверно сообщил задание, либо твои поля имеют другие названия и типы, нежели ты думал.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Diskriptor
|
|
« Ответ #6 : 26-05-2008 08:20 » |
|
dimka, Зная, что запрос надо писать, просто думал что я сохранил рабочий но его не оказалось ну нечего напишу новы, ну а что касается 7 задания запрос работает вот такой DELETE FROM Books WHERE Quantity LIKE '*6*' OR Quantity LIKE '*7*'; То есть у меня поле Books и % заменил на * и все заработало, вот архив попробуй
|
|
« Последнее редактирование: 26-05-2008 10:49 от Diskriptor »
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Diskriptor
|
|
« Ответ #7 : 29-05-2008 11:02 » |
|
Здравствуйте, я поставил 200 SQLserver, то ест в пуски он появился, а вот что дальше делать я не знаю, а хочу следующие, у меня есть по SQL книга, и к ней идет учебная база в виде исходникак в txt фермате как ее скампилит можно, или как это в SQL называется, ну в общем что она работала, расскажите пожалуйста или ссылку дайте где про это можно прочитать заранее спасибо
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Sla
|
|
« Ответ #8 : 29-05-2008 11:27 » |
|
а что в книжках? а ты все установил, что тебе предлагали? например Microsoft Query?
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Diskriptor
|
|
« Ответ #9 : 29-05-2008 15:43 » |
|
Sla, У меня ест две книге одна по 2005SQL server там описывается все от установка реализация администрирование, но там все по 2005 SQL server а мы учим 200SQL server и только в плане администрирования и чиста язык структурный запросов, у меня ест вторая книга там все расписано только по структурным запросам, но там не описывается установка ни какого server вообще, я все установил, как описывалось по этой ссылки http://muonlineprogs.ucoz.ru/publ/1-1-0-10 а ты все установил, что тебе предлагали? например Microsoft Query? да все, Query Analyzer и это тоже.
|
|
« Последнее редактирование: 29-05-2008 15:45 от Diskriptor »
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Diskriptor
|
|
« Ответ #10 : 01-06-2008 22:16 » |
|
Здравствуйте пожалуйста помогите существует таблица Access в формате MDB распашите процедуру импорта это базы из Access в SQL, тесть я делаю следующие действия открываю Enterprise Manager Databases ToolsData Transformation ServicesImport Data Далше открывается окошко Chhose a Data Source в ниспадающем окошки Data Source выбираем Microsoft Access в File name на жимам на кнопочку с тремя точечками и указываем места положение базы которую нам надо ипартироват далее открывается окно Choose a destination в поле Destination оставляем по умолчанию Microsoft OLE DB Provider for SQL Server далее открывается окошко Specufy Tabble Copy or Query глочку оставляем на Copy tables(s) and view(s) the souce databaseдалее появляется окошко Select Source Tables and Views в этом окошки показывается имя Source – название базы, Destination- формат базы, Transfer –кнопочка с тремя точками далее следующие окно Save, schedule replicate packageГотово в окошки Summary выдает следующий отчет: Source: Microsoft Access Using Microsoft Jet 4.0 OLE DB Provider Location: e:\база шаг\books.mdb Destination: Microsoft SQL Server Using Microsoft OLE DB Provider for SQL Server Location: (local) Database: master Tables books -> [master].[dbo].[books] импорт прошел успешно захожу в Databases обновляю а базы нет, почему?
|
|
« Последнее редактирование: 01-06-2008 22:18 от Diskriptor »
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #11 : 02-06-2008 07:51 » |
|
импорт прошел успешно захожу в Databases обновляю а базы нет Ещё бы, ты куда импорт выполнял? Destination: Microsoft SQL Server Using Microsoft OLE DB Provider for SQL Server Location: (local) Database: master
Всё же написано. Зачем-то системную базу данных испортил.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Diskriptor
|
|
« Ответ #12 : 02-06-2008 09:33 » |
|
dimka, Поныл я ошибаюсь в том куда импортировать базу при выбери в не спадающем окошки что выбрит вместо Microsoft OLE DB Provider for SQL Server подскажи, в окне Chose a Data Source выбираем что импортировать а в окне Choose a destination куда импортировать вот тут я и ошибаюсь что в это окне выбрать я системную базу не хотел импортировать, подкинет силку на хоровую книгу по 200 SQL server, для начинающего
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
McZim
|
|
« Ответ #13 : 02-06-2008 11:05 » |
|
Diskriptor, ты специально не по русски пишешь? Пиши без ошибок пожалуйста!!!
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Sla
|
|
« Ответ #14 : 02-06-2008 11:24 » |
|
Offtopic: McZim, увы, с ошибками Diskriptor'а здесь на форуме уже смирились, но то есть причины, не здесь их обсуждать. Если интересно то поищи его первые сообщения, тогда поймешь...
Поставлю в угол.
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Diskriptor
|
|
« Ответ #15 : 02-06-2008 11:51 » |
|
McZim, Извините все!
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Diskriptor
|
|
« Ответ #16 : 02-06-2008 14:12 » |
|
С импортом базы из Access в SQL разобрался.
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Diskriptor
|
|
« Ответ #17 : 05-06-2008 15:28 » |
|
SQL Запросы Д.З№2 1.)Вывести все содержимое books: 2.)Вывести все новые книги Select N,New,Name From books Where New=1; 3.)Вывести все книги по программированию Select N,Name,Themes From books where Themes like '%Программирование%'; 4.)Вывести все книги кроме книг по программированию Select N,Name,Themes From books where Themes not like '%Программирование%'; 5.)Выведите все книги в диопозоне страниц от 400 до 600 SELECT N,Name,Pages FROM books WHERE pages >=400 and pages <=600; 6.)Выведете все книги все книги до30 грн., без мелочи where (price-ROUND(price,0,1))=0 and price<30 7.) Выведите все книги где в название ест 2000 Select Name From books Where Name like '%2000%' 8.)Выведите книги, где в названии есть три буквы а, но нет буквы з SELECT N,code,Name From books where Name like '%a%a%a%' and Name not like '%з%' 9)Выведите все книги где ест слово Microsoft SELECT Name From books Where Name like '%Microsoft%' 10.)Выведите все книги, где Microsoft в начали названия SELECT Name From books Where Name like '[M][i][c][r][o][s][o][f][t]%' 11) Выведите книги, в названиях которых есть слово Microsoft, но нет слова Windows SELECT Name From books Where Name like '%Microsoft%' and Name not like '%Windows%' 12.) Выведите книги для программистов Select N,Name From books where Themes not like '%Программисты%'; 13) Выведите книги для администраторов SELECT Name From books Where Name Like '%админ%' 14.) Выведите все самоучители SELECT Name From books Where Name Like '%самоуч%' Все запросы работают
|
|
« Последнее редактирование: 16-08-2008 19:53 от Diskriptor »
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Sla
|
|
« Ответ #18 : 05-06-2008 15:57 » |
|
ошибка в 7 запросе я думаю что 14 запрос не есть ответ в 5-ом запросе можно рассмотреть конструкцию с between
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Diskriptor
|
|
« Ответ #19 : 05-06-2008 17:45 » |
|
Sla,7 Запрос подправил 14 запрос работает нормально ну можно реализовать вот так SELECT Name From books Where Name Like '%самоучитель%' в моем случаи на выводе данных из таблице это не повлияло в 5-ом запросе можно рассмотреть конструкцию с between да рассмотрим, но чуть попозже.
|
|
« Последнее редактирование: 05-06-2008 18:06 от Diskriptor »
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Sla
|
|
« Ответ #20 : 05-06-2008 18:19 » |
|
Diskriptor, все верно, с 14 запросом, но есть одно! у тебя есть поля Name и Themes а о том что это самоучитель, может быть не указано в поле Name. в частном случае, тебе повезло
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Diskriptor
|
|
« Ответ #21 : 05-06-2008 19:34 » |
|
Sla, Да, согласен очень тонкое замечание.
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
Diskriptor
|
|
« Ответ #22 : 09-06-2008 18:32 » |
|
я научился импортировать базу из Access в SQL, но нам не показывали как подцепит балу SQL, ну то ест есть файл books.mdf его надо подкинут в SQL как это заделать
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
McZim
|
|
« Ответ #23 : 09-06-2008 19:00 » |
|
SQL это не база, это язык структурированных запросов, так что ты не мог туда выгрузить Я так понимаю тебе нужно в MySQL импортировать базу, тогда так: mysql --host=имя_хоста --user=имя_юзера --password=пароль имя_базы < файл_дампа
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Sla
|
|
« Ответ #24 : 09-06-2008 19:10 » |
|
McZim, Diskriptor работает с MS SQL
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
McZim
|
|
« Ответ #25 : 09-06-2008 19:12 » |
|
|
|
|
Записан
|
The CBO without stats is like a morning without coffee. (c) T.Kyte.
|
|
|
Sla
|
|
« Ответ #26 : 09-06-2008 19:14 » |
|
На данном этапе обучения, ему не нужно знать как устроена файловая система СУБД Просто, к сожалению преподаватель, читающий курс, человек нахватавшийся каких-то знаний, но не практик
|
|
« Последнее редактирование: 09-06-2008 19:17 от Sla »
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Sla
|
|
« Ответ #27 : 09-06-2008 19:16 » |
|
Нет! ему это не нужно!!!!
|
|
|
Записан
|
Мы все учились понемногу... Чему-нибудь и как-нибудь.
|
|
|
Dimka
Деятель
Команда клуба
Offline
Пол:
|
|
« Ответ #28 : 09-06-2008 19:18 » |
|
Diskriptor, в Enterprise Manager 2000-го сервера или в студии 2005 сервера в дереве объектов сервера кликнуть на Databases правой кнопкой и выбрать команду Attach. Дальше заполнить диалоговое окошко.
|
|
|
Записан
|
Программировать - значит понимать (К. Нюгард) Невывернутое лучше, чем вправленное (М. Аврелий) Многие готовы скорее умереть, чем подумать (Б. Рассел)
|
|
|
Diskriptor
|
|
« Ответ #29 : 09-06-2008 19:54 » |
|
dimka, спасибо буду знать. P.S. я работаю в Enterprise Manager 2000
|
|
|
Записан
|
Единственный способ, научится программировать на каком либо языке программирования, это писать на этом языке программы.
|
|
|
|