2011-02-09 2 views
1

Скажем, у меня сейчас 2 таблицы, PricePlan и Bill. Обе таблицы имеют столбец «Цена», и мне бы хотелось, чтобы таблица «Билл» обновила значение «Цена Прайса». Как я могу это сделать или что SQL-оператор должен использовать? Заранее спасибо!C# Access Database Вопрос

+4

Вы можете показать структуру таблицы более подробно? как соотносятся тарифный план и счет? какую версию доступа вы используете? что это связано с C#? –

ответ

1

Вам нужно будет каким-то образом определить взаимосвязь между двумя таблицами.

Например, если ваши таблицы имеют такую ​​структуру:

PricePlan 
--------- 
ID 
Price 

Bill 
--------- 
PricePlanID 
Price 

Это будет работать только для SQL Server. См. Ниже раздел Решение для доступа.

Тогда запрос, как это следует обновить Билл:

UPDATE b SET b.Price = pp.Price 
FROM Bill as b 
INNER JOIN PricePlan as pp 
ON b.PricePlanID = pp.id 

Кроме того, схема выше только для примера. Если вы похожи на это, вы должны посмотреть на его изменение.

UPDATE

Я только заметил, что это для доступа, извините. Структура вашего запроса будет немного отличаться. Смотрите ниже:

UPDATE Bill INNER JOIN 
PricePlan ON Bill.PricePlanID = PricePlan.ID 
SET Bill.Price= [PricePlan].[Price]; 
+0

Привет, спасибо за помощь. У меня есть 2 записи в PricePlan, которые являются «Гость» и «Пользователь». Я уже создал связь между обеими таблицами. Цена, похоже, обновляется и работает для «гостя», но не для «Member», есть ли что-то, что мне нужно изменить? – pacheco

+1

Я не понимаю, что вы подразумеваете под двумя записями, которые являются «Гость и« Член ». Можете ли вы предоставить некоторые выборочные данные в своем вопросе, а также то, что вы хотите, чтобы конечные данные выглядели? –

+0

О, в основном PricePlan имеет следующие столбцы: «PricePlanName» и «Price». Поэтому у меня есть PricePlanName of Guest и Member, каждый из которых имеет свою собственную «Цена». То, что я хотел бы достигнуть в «Цена» для таблицы «Билл», - это изъятие цены за гостя или участника. – pacheco

0

сделать некоторые широкие предположения здесь, но я думаю, что this short tutorial на каскадные обновления в доступе 2010 должны получить вас на вашем пути.

Смежные вопросы