1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14

create table...

14.02.2012, 12:35. Показов 5283. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем выручайте... голова уже никак не хочет думать


Delphi
1
2
3
4
5
6
7
8
  with Form3.ADOQuery1 do
    try
      SQL.Clear;
      SQL.Add('create table klassss(number int primary key)');
      ExecSQL;
    except
     ShowMessage('hi');
  end;
Выдает "Ошибка синтаксиса при определении данных"
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.02.2012, 12:35
Ответы с готовыми решениями:

CREATE TABLE IF NOT EXISTS
Ошибка синтаксиса в инструкции CREATE TABLE. БД MS Access. для ацеса инструкция IF NOT EXISTS не работает? или я не верно составил запрос,...

Ошибка синтаксиса в инструкции CREATE TABLE
При выполеннии запроса Delphi говорит что ошибка синтаксиса, код вроде бы как верный. В чем проблема? create table sklad ( id int (10)...

Как через ADO вызвать Create Table?
Народ помогите пожалуйста. Как через ADO вызвать Create table для ACCESS. Необходимо создавать таблицы в ACCESS с помощью инструментов...

15
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
14.02.2012, 12:42
number может совпадать с одним из ключевых слов данной СУБД, поэтому такие слова для названий объектов/полей лучше не употреблять
0
1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14
14.02.2012, 14:43  [ТС]
сделал так
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
procedure TForm5.Button1Click(Sender: TObject);
begin
 with Form3.ADOQuery1 do
     try
      Close;
      SQL.Clear;
      SQL.Add('create table scool__ (kod int primary key,name char(30),ed_izm char(10),na_nachalo_goda char(10))');
      ExecSQL;
      Open;
     except
      ShowMessage('hi');
     end;
end;
таблица создается, но тут же выскакивает ошибка, мол такая таблица уже существует.
 Комментарий модератора 
Пользуйтесь тегами кодов
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
14.02.2012, 15:42
Цитата Сообщение от sanadog
таблица создается, но тут же выскакивает ошибка, мол такая таблица уже существует.
1. откуда знаешь, что создается?
2. а может действительно существует?

Кстати, name тоже может совпадать с ключевым словом

PS
Когда задаешь вопрос о БД, привыкай называть СУБД, поскольку многие вещи в разных СУБД реализованы по разному
0
1263 / 706 / 62
Регистрация: 21.12.2009
Сообщений: 2,256
14.02.2012, 15:53
Цитата Сообщение от Grossmeister Посмотреть сообщение
Кстати, name тоже может совпадать с ключевым словом
Такого не встречал ни разу
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
14.02.2012, 16:12
В Oracle список ключевых слов определяют так:
SQL
1
2
SELECT *
FROM v$reserved_words
Там примерно 700 слов. name там действительно нет, но, скажем, named присутствует
Поэтому за все СУБД говорить не возьмусь
0
 Аватар для arni
914 / 879 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
14.02.2012, 17:28
Цитата Сообщение от sanadog Посмотреть сообщение
SQL.Add('create table scool__ (kod int primary key,name char(30),ed_izm char(10),na_nachalo_goda char(10))');
ExecSQL;
Open;
ExecSQL и Open несовместимы
отсюда и ругань на дубликат
0
1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14
15.02.2012, 12:00  [ТС]
Сейчас убрал close..open
таблицу создает, но пишет "list index out of bounds "
это надо индекс еще плюсом создавать?

Delphi
1
2
3
4
5
6
7
8
with Form3.ADOQuery1 do
     try
      SQL.Clear;
      SQL.Add('create table scool_000 (kod int primary key,name char(30),ed_izm char(10),na_nachalo_goda char(10))');
      ExecSQL;
     except
      ShowMessage('hi');
     end;
кстати, gossmeister, таблицы такой не было я перед запуском в бд все проверял.
БД в access
0
 Аватар для arni
914 / 879 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
15.02.2012, 13:12
Цитата Сообщение от sanadog Посмотреть сообщение
таблицу создает, но пишет "list index out of bounds "
указанное исключение возникает за пределами указанного фрагмента.
ищите где у вас циклы по TStrings или что-то подобное.
0
1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14
15.02.2012, 14:04  [ТС]
В общем весь день сегодня на смарку пошел(( вот что сделал за день,
толку никакого... голова уже отказывается смотреть на эти несчастные строки..
делфи говорит ошибка синтаксиса в ceate.. спасайте люди..
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm5.Button1Click(Sender: TObject);
var i:integer;
begin
  i:=0;
    with Form3.ADOQuery1 do
      try
       //Active:=False;
       SQL.Clear;
       SQL.Add('create table scooll_'+inttostr(i)+'(kod counter primary key,name_1 char(30),ed_izm char(10),na_nachalo_goda char(10))');
       SQL.Add('select kod,name_1,ed_izm,na_nachalo_goda from scooll_'+inttostr(i)+')');
       ExecSQL;//Active:=True;
      except
       ShowMessage('hi');
      end;
  i:=i+1;
 
  Form3.Show;
0
4217 / 3059 / 583
Регистрация: 21.01.2011
Сообщений: 13,203
15.02.2012, 14:25
Зачем 2 запроса в 1 SQL засунул?
0
1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14
15.02.2012, 14:31  [ТС]
Цитата Сообщение от Grossmeister Посмотреть сообщение
Зачем 2 запроса в 1 SQL засунул?
да хрен его знает, ниче уже не соображаю
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
procedure TForm5.Button1Click(Sender: TObject);
var i:integer;
begin
  i:=0;
    with Form3.ADOQuery1 do
      try
       //Active:=False;
       SQL.Clear;
       SQL.Add('create table scooll_'+inttostr(i)+'(kod counter primary key,name_1 char(30),ed_izm char(10),na_nachalo_goda char(10))');
       //SQL.Add('select kod,name_1,ed_izm,na_nachalo_goda from scooll_'+inttostr(i)+')');
       ExecSQL;//Active:=True;
      except
       ShowMessage('hi');
      end;
  i:=i+1;
 
  Form3.Show;
end;
если так, то выдает что таблица уже существует, хотя там нет таковой

вернее нет, не так.
после первого запуска выдает "list index out of bounds" ,но таблицу создает. После второго запуска пишет, что такая таблица есть уже, в общем вот прога, у кого время будет-гляньте..
Вложения
Тип файла: rar Пономарев.rar (483.3 Кб, 20 просмотров)
0
 Аватар для arni
914 / 879 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
15.02.2012, 15:11
sanadog, отладку запускайте:
втаньте на строку "i:=0", жмите на F4 и далее F7-F7-F7-... пока не упретесь в строку, где ошибку ловите.

сразу подумайте над вопросом: а зачем вам переменная i? Цикла все равно нет...
если вы надеетесь, что второй и третий раз нажав на кнопку Button1 вы побежите создавать таблицу scooll_2, scooll_3 и т.д. - вы глубоко ошибаетесь. Вы КАЖДЫЙ раз будете создавать таблицу scooll_1 и естественно натывакться на ругать о её существаовании.
1
1 / 1 / 0
Регистрация: 02.02.2012
Сообщений: 14
17.02.2012, 06:55  [ТС]
Цитата Сообщение от arni Посмотреть сообщение
sanadog, отладку запускайте:
втаньте на строку "i:=0", жмите на F4 и далее F7-F7-F7-... пока не упретесь в строку, где ошибку ловите.

сразу подумайте над вопросом: а зачем вам переменная i? Цикла все равно нет...
если вы надеетесь, что второй и третий раз нажав на кнопку Button1 вы побежите создавать таблицу scooll_2, scooll_3 и т.д. - вы глубоко ошибаетесь. Вы КАЖДЫЙ раз будете создавать таблицу scooll_1 и естественно натывакться на ругать о её существаовании.
Спасибо конечно, но проблема не решилась...
ошибка возникает после добавления запроса на строке execsql
0
 Аватар для rdama
569 / 292 / 12
Регистрация: 28.01.2011
Сообщений: 1,326
17.02.2012, 07:13
Ух...
Что за СУБД?
Нафига вам десятки, сотни и п.р кол-ва таблиц вида scooll1, scooll2..scooll2500..scoolln?
Что вы делаете?
Если у вас появилась необходимость генерить одинаковые таблицы, это явно корявое проектирование БД. Не учли какие-то особенности в самом начале.
Чем будут отличаться записи в таблицах scooll1 и в scooll255?
Может стоит вернуться к проектированию БД? Пересмотреть некоторые аспекты? И если тяму не хватает спросить...
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
17.02.2012, 11:54
Delphi
1
ошибка возникает после добавления запроса на строке execsql
Ошибка возника когда Вы взялись проектировать базу, не имея элементарных базовых знаний в этой области
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.02.2012, 11:54
Помогаю со студенческими работами здесь

SQL 'create table' для стандартной базы Paradox
Ludi, mogno li dla standartnoi basi Paradox sozdat novuu tablicu dinamicheski c pomoshiu SQL ili chego to drugogo??????

Create Login MS. SQL Server 2005
Здравствуйте ребята ... Установил MS.SQL Server 2005 Enterprise на Windows Server 2003 подключил несколько клиентская машина через...

how can i create mainmenu with any fonts wich i wont and how can i create mainmenu with diferent style?
please tell me how can i create mainmenu with any fonts wich i wont and how can i create mainmenu with diferent style?

string, create, checked
хотел бы знать смысл string, create, checked и др. переменных! в каких случаях их применять! кто подскажет? и пожалуйста, если возможно...

Вылет с ошибкой на TBitmap.Create
Есть вот такой код: type TMyClass1 = class(TMyClass) private Bitmaps: array of TBitmap; public ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru