|
|
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
Добрый день! У меня появился очень глупый вопрос! Если честно, я пока только начинаю разбираться с SQL инструкциями, и поэтому у меня все вопросы глупые:) У меня есть база. И я ее подключаю к своей программе через АДО. Я хочу удалить из нее данные, не входящие в два диапазона чисел. Я пишу(к примеру) : delete * From OLD.DBF where DX not between 1 and 5 and not between 7 and 9 У меня появляется ошибка синтаксиса. Подскажите, что это за ошибка и как правильно все сделать. Большое спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2008, 17:08 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
VotmaxУ меня есть база. И я ее подключаю к своей программе через АДО. Я хочу удалить из нее данные... ууу, судя по вопросу, вы слишком далеко полезли, для начала купите/скачайте книжку по основам языка SQL, затем по C#/ADO. NET и только затем приступайте что либо делать. ЗЫ интересно, как вы базу создали ? ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2008, 08:26 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
VotmaxДобрый день! У меня появился очень глупый вопрос! Если честно, я пока только начинаю разбираться с SQL инструкциями, и поэтому у меня все вопросы глупые:) У меня есть база. И я ее подключаю к своей программе через АДО. Я хочу удалить из нее данные, не входящие в два диапазона чисел. Я пишу(к примеру) : delete * From OLD.DBF where DX not between 1 and 5 and not between 7 and 9 У меня появляется ошибка синтаксиса. Подскажите, что это за ошибка и как правильно все сделать. Большое спасибо. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2008, 11:50 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
Спасибо за ответы, даже за колкие (база уже была) Я пишу: Set db = New ADODB.Connection Set RS = New ADODB.Recordset db.CursorLocation = adUseClient db.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=C:\;" + "Extended Properties=""DBASE IV;"";""" db.Open RS.Open "delete From OLD.DBF where (DX not between 10 and 20) and (DX not between 40 and 50)", db, , , adCmdText А программа выдает: В первый раз - такой тип сортировки не поддерживается операционной системой Во второй раз - отсутствует значение для одного или нескольких требуемых параметров Что делать??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2008, 21:09 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
VotmaxСпасибо за ответы, даже за колкие (база уже была) Я пишу: Set db = New ADODB.Connection Set RS = New ADODB.Recordset db.CursorLocation = adUseClient db.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=C:\;" + "Extended Properties=""DBASE IV;"";""" db.Open RS.Open "delete From OLD.DBF where (DX not between 10 and 20) and (DX not between 40 and 50)", db, , , adCmdText А программа выдает: В первый раз - такой тип сортировки не поддерживается операционной системой Во второй раз - отсутствует значение для одного или нескольких требуемых параметров Что делать??? Как у вас рекордсет вообще с базой связан? За рекордсетом телепатии раньше не наблюдал. Вы к эксел что - ли коннектитесь? Покажите всю строку подключения. Что это значит - программа выдает в первый раз, во второй раз? Когда первый, когда второй? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.07.2008, 21:39 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
SQL_LamerКогда первый, когда второй? Код: plaintext в общем, ждем более четкого формулирования вопроса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2008, 08:33 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
Все, я разобрался, сообщения выводились когда я не подключил какой то элемент ADO настройках. Я пишу: Set db = New ADODB.Connection Set RS = New ADODB.Recordset Set com = New ADODB.Command db.CursorLocation = adUseClient db.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=C:\;" + "Extended Properties=""DBASE IV;"";""" db.Open comm.ActiveConnection = db comm.CommandText = "delete From OLD.DBF where DX between 1 and 5" comm.Execute Программа отрабатывает без каких либо сообщений об ошибке.Но база после этого остается не отредактированной. Хотя если поменять имя столбика в таблице на неправильное, то появится ошибка, т.е. база открывается, команда проходит, а результата никакого! В чем дело, никто не знает? Я предположил, что просто нет таких записей, однако проверил код на других базах, даже по текстовым полям с удалением нужной текстовой строки, но результат один и то же. Подскажите, пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.07.2008, 19:45 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
Votmax насколько я понимаю, ваш код должен выглядеть примерно так: Код: plaintext 1. 2. 3. 4. 5. ЗЫ заместо SqlConnection, можете использовать нужный вам вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.07.2008, 08:51 |
|
||
|
SQL инструкции
|
|||
|---|---|---|---|
|
#18+
Я понял, в чем было дело, оказывается записи помечались как удаленные, но в базе все равно оставались. Вот что я придумал: Создал такую же базу из старой, но пустую, применил PACK, и просто хочу с одной базы перекинуть все записи, отобранные по условию вот так: Код: 1. 2. 3. Выдается ошибка, что отсутствует значение для одного или нескольких параметров, это как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.07.2008, 11:14 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=35428165&tid=1352205]: |
0ms |
get settings: |
11ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
64ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 284ms |
| total: | 425ms |

| 0 / 0 |
