powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Convert ACCESS Query to MSSQL
5 сообщений из 5, страница 1 из 1
Convert ACCESS Query to MSSQL
    #32008997
Фотография Lena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kak perevesti ACCESS query kotorie zavisiat ot Form pramera v MSSQL Stor.Proc.
Ia perevozu ACCESS na MSSQL7, ispolzovala Upsizing Wizard, on perevel nekotorie Query, a nekotorie net, vot odna iz inih.
U menia frontend(application) na ACCESS( Project) podkluchau k MSSQL serveru gde hraniatsia vse DBObjects(tables, Views, SP i.t.d).
Naprimer:
na forme est okno dlia "ID_No",znachenia v kotoroi vibirautsia userom nazatiem buttona(poocheredi perebiraet), i avtomatom dannie sootvetstvuushie dannomu "Id", dolzni poiavliatsia v sootvetstvuushih fields("Name" i t.d).
Est ACCESS query :
"SELECT Contacts.[Ref No], Contacts.Customer, [First Name] & " " & [Surname] AS Name
FROM Contacts
WHERE (((Contacts.Customer)=[forms]![JobUpdate]![Customer]));"

kak predat v MSSQL SP znachenie "ID_No", kotoroe vibral user.
Lena
...
Рейтинг: 0 / 0
Convert ACCESS Query to MSSQL
    #32008998
Фотография Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нужно написать запрос прямо в форме или отчете типа

select КодКлиента from Клиенты where КодКлиента = ?

Знак вопроса и будет параметром, а в свойствах формы в строке Input parametrs
написать
p1=[forms]![Клиенты]![Поле код клиента], здесь p1 и будет параметром который подставится вместо вопроса

Читай литературу по sql SERVER и не программируй на Access, переходи на delphi или c builder. Потомучто access не позволяет делать многих вещей. Например диаграммы с параметрами
...
Рейтинг: 0 / 0
Convert ACCESS Query to MSSQL
    #32009010
AlexUnik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Lena
В качестве примера могу привести свое представление о возможной реализации Вашей задачи.

В форме, которая выводит набор контактов по выбранному в списке ID, в событиях после обновления списка ID поставьте процедуру передачи параметров SP и формирования нужного набора контактов (приблизительно):
Private Sub id_AfterUpdate()
Dim db As Database
Dim st_sq As String
Dim qr As QueryDef

'Ссылка на текущую БД
Set db = CurrentDb()

'Создание запроса для вывода результатов из SP
Set qr = db.createQueryDef("MyQuery")

'Подсоединение к серверу через ODBC
db.QueryDefs![Query25_0a].connect = "ODBC; UID=" & rs!User "; PWD=" & rs!Password & "; DSN=" & rs!dsn & "; SERVER=" _ & rs!server & "; USE_TRUSTED_CONNECTION=YES"

'Строка передачи параметра в SP
st_sq = "exec sel_contacts @id = " & me.id

'Формирование запроса на выполнение SP
db.QueryDefs![Query25_0a].SQL = st_sq

'Присвоение источника строк твоей форме или боксу в ней
Me.boxKontact.RowSource = "SELECT * FROM MyQuery"

'Вариант с дополнительным выбором уже в Access
'Me.boxKontact.RowSource = "SELECT * FROM MyQuery WHERE contact = " & Chr(34) & Me.Combo & Chr(34)

'Максимизация формы
DoCmd.Maximize

'Удаление ненужных объектов
qr.Close
Set qr = Nothing
Set qd = Nothing
DoCmd.DeleteObject acQuery, "Query25_0a"
db.Close
Set db = Nothing

'Обновляем данные в форме
me.requery

End Sub

На сервере должна быть SP (примерно):
CREATE PROCEDURE SEL_CONTACTS (@ID INT) AS
--Выборка контактов, условие на случай если выбрать надо всех
IF ISNULL(@ID,0) <>0
BEGIN
SELECT C.Ref_No, C.Customer, C.First Name & " " & C.Surname AS Name
FROM Contacts C
WHERE C.ID= @ID
END
ELSE
BEGIN
SELECT C.Ref_No, C.Customer, C.First Name & " " & C.Surname AS Name
FROM Contacts C
END
Ну и естественно необходимо дать доступ на SP Вашим клиентам.

PS. Не проверял, но после разумной доводки должно работать
...
Рейтинг: 0 / 0
Convert ACCESS Query to MSSQL
    #32009012
AlexUnik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Насчет connecta к серверу - извините, там немножко непрозрачно (поспешил, обрезая свой пример). Но я надеюсь, раз Вы работаете с SQL Server, то уже можете, как минимум, подсоединяться к нему из Access А насчет того, что Access не подходит для программирования приложений - не думаю. Во всяком случае Ваш вопрос не поднимает каких-то повышенных требований к Access
...
Рейтинг: 0 / 0
Convert ACCESS Query to MSSQL
    #32009786
Фотография Lena
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Spasibo vsem kto otvetil.
Poprobovala pervii variant(ne znau imeni):
/***нужно написать запрос прямо в форме или отчете типа
select КодКлиента from Клиенты where КодКлиента = ?

Знак вопроса и будет параметром, а в свойствах формы в строке Input parametrs
написать
p1=[forms]![Клиенты]![Поле код клиента], здесь p1 и будет параметром который подставится вместо вопроса
***/

Vidaet oshibky :"Syntax error or ACCESS violation".
lubie idei i predlozenia budut ochen kstati.
Lena
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Convert ACCESS Query to MSSQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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