2015-03-19 2 views
0

Я использую SQL Server 2008 R2 и у меня есть 2 таблицы, как:SQL View из 2 таблиц с FK отношения

create table Client 
(
    Id int identity(1,1) Primary Key, 
    Name varchar(30) not null, 
    LastName varchar(30) not null, 
    Tel int not null unique, 
    Email varchar(30), 
    Uwagi varchar(35), 
    Problem bit , 
    Wizyty int 
); 

и

create table Wizyta 
(
    Id int identity(1,1) Primary Key, 
    Data date not null, 
    IdClient int not null, 
    Opis varchar(30), 
    DataZapisu date default(getdate()), 

    constraint fk_perWizyta 
     foreign key (IdClient) references Client(Id) on delete cascade 
); 

создать вид:

create view Tranzakcje as 
(
    Select 
     Data, (Name+ ' ' + LastName) As Client, 
     Opis, DataZapisu 
    from 
     Wizyta w 
    inner join 
     Klient k on k.Id = w.IdKlient 
) 

И он работает по моему запросу, но когда я выполняю просмотр из своего мобильного приложения, я получаю ошибку:

SQLException Недопустимое имя столбца Id.

Как его решить или как создать вид с колонками Data Client (Name + LastName) Opis, DataZapisu.

+0

У вас есть таблица клиентов, записанная с буквой «K» в Просмотреть определение. Он работает, когда вы меняете это, чтобы соответствовать написанию фактической таблицы? – rhholt

ответ

0

В вашем представлении фактически нет идентификатора coloumn. Если вам это нужно, вам нужно выбрать любой идентификатор, который вы хотите использовать.
А также, как прокомментировал rhholt: вы, кажется, переключаетесь между K и C для своей таблицы Client/Klient (то же самое относится к полю IdClient/IdKlient) ...

+0

Пожалуйста, [формат] (http://stackoverflow.com/help/formatting) ответ, чтобы улучшить его читаемость. – ryanyuyu

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