powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Препроцессор/парсер SQL
8 сообщений из 33, страница 2 из 2
Препроцессор/парсер SQL
    #37777521
serg99
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nafвот было бы хорошо, если бы предусматривалась возможность писать "через точку" как в Си++ к примеру:
Код: sql
1.
2.
select Contract.Company.FullName
from Sales

что раскрывалось бы в:
Код: sql
1.
2.
3.
4.
select Companies.FullName
from Sales
left join Contracts on Sales.Contract=Contracts.ID
left join Companies on Contracts.Company=Companies.ID


Еще лучше если бы можно было написать

Sales.Contract.Company.FullName

Собственно мы СУБД именно с такими возможностями делаем.
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37778470
vvm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Сахарок"...:)
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37778522
Фотография U-gene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
serg99Nafвот было бы хорошо, если бы предусматривалась возможность писать "через точку" как в Си++ к примеру:
Код: sql
1.
2.
select Contract.Company.FullName
from Sales

что раскрывалось бы в:
Код: sql
1.
2.
3.
4.
select Companies.FullName
from Sales
left join Contracts on Sales.Contract=Contracts.ID
left join Companies on Contracts.Company=Companies.ID


Еще лучше если бы можно было написать

Sales.Contract.Company.FullName

Собственно мы СУБД именно с такими возможностями делаем.
Не лучше.
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37779732
Фотография U-gene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nafвот было бы хорошо, если бы предусматривалась возможность писать "через точку" как в Си++ к примеру:
Код: sql
1.
2.
select Contract.Company.FullName
from Sales

что раскрывалось бы в:
Код: sql
1.
2.
3.
4.
select Companies.FullName
from Sales
left join Contracts on Sales.Contract=Contracts.ID
left join Companies on Contracts.Company=Companies.ID



Примеры запросов из рабочего прототипа такого "парсера"

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
SELECT  
  #gm.DocNo,  
  #gm.PostingDate,  
  #gm.Comment, 
  #gm.Contractor.Name,  
  #gm.Items.Art,  
  #gm.Items.Pieces,  
  #g.PricePL 
FROM  
GOODSMOVEMENTS #gm JOIN GOODS #g ON #gm.Items.Art = #g.Art;

SELECT  
  #gm.DocNo,  
  #gm.PostingDate,  
  #gm.Contractor.Name, 
  #gm.Items.Art, 
  #gm.Items.Pieces  
FROM GOODSMOVEMENTS  #gm 
WHERE #gm.Items.Art LIKE "Hat%" 

SELECT 
  #gt.DocN,
  #gt.Cntr.Name,
  #gt.Cntr.Bank.Name
FROM GOODS[.Art LIKE "T%"].Turnover #gt;



если интересно, читать здесь
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37781450
Гхостик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37781506
Naf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
U-geneесли интересно, читать здесь
интересно, уже ранее ознакомился )) спасибо
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37781510
Фотография U-gene
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
... *смотрит, бурча под нос* ну что ж вы все классы в таблицы запихнуть пытаетесь?
...
Рейтинг: 0 / 0
Препроцессор/парсер SQL
    #37782628
neoddd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В хелпе микрософта для всего T-SQL есть такое:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
[ WITH <common_table_expression> [ ,...n ] ]
DELETE 
    [ TOP ( expression ) [ PERCENT ] ] 
    [ FROM ] 
    { <object> | rowset_function_limited 
      [ WITH ( <table_hint_limited> [ ...n ] ) ]
    }
    [ <OUTPUT Clause> ]
    [ FROM <table_source> [ ,...n ] ] 
    [ WHERE { <search_condition> 
            | { [ CURRENT OF 
                   { { [ GLOBAL ] cursor_name } 
                       | cursor_variable_name 
                   } 
                ]
              }
            } 
    ] 
    [ OPTION ( <Query Hint> [ ,...n ] ) ] 
[; ]

<object> ::=
{ 
    [ server_name.database_name.schema_name. 
      | database_name. [ schema_name ] . 
      | schema_name.
    ]
    table_or_view_name 
}



Осталось только выдрать и парсер/генератор натравить. Может кто-то сделал уже ...
...
Рейтинг: 0 / 0
8 сообщений из 33, страница 2 из 2
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Препроцессор/парсер SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]