SQL 从具有 FK 关系的 2 个表中查看
SQL View from 2 tables with FK relationship
我使用 SQL Server 2008 R2,我有 2 个表,例如:
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 Invalid column name Id.
如何解决它或如何创建包含列 Data Client (Name + LastName) Opis, DataZapisu
的视图。
您的视图实际上不包含 Id 列。如果你需要它,你必须select你想使用哪个ID。
正如 rhholt 评论的那样:您似乎在 Client/Klient table 的 K 和 C 之间切换(字段 IdClient/IdKlient 也是如此)...
我使用 SQL Server 2008 R2,我有 2 个表,例如:
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 Invalid column name Id.
如何解决它或如何创建包含列 Data Client (Name + LastName) Opis, DataZapisu
的视图。
您的视图实际上不包含 Id 列。如果你需要它,你必须select你想使用哪个ID。
正如 rhholt 评论的那样:您似乎在 Client/Klient table 的 K 和 C 之间切换(字段 IdClient/IdKlient 也是如此)...