Select pmtblempreg.Id
,pmtblempreg.Name
,pmtblempreg.UserName
,pmtbldesignation.Designation
, pmtblempreg.skypeid
,pmtblempreg.EmailId
From pmtbldesignation
Right join pmtblempreg ON
pmtbldesignation.Id = pmtblempreg.DesignationId这个查询在oracle数据库中运行良好。但是,使用sqlDataSource填充网格视图时,会出现一个错误,显示该无效的表名
当我通过sqldataSource的查询构建器执行它时,查询更改为
SELECT PMTBLEMPREG.ID
,PMTBLEMPREG.NAME
,PMTBLEMPREG.USERNAME
,PMTBLDESIGNATION.DESIGNATION
,PMTBLEMPREG.SKYPEID
,PMTBLEMPREG.EMAILID
FROM { **oj PMTBLDESIGNATION**
RIGHT OUTER JOIN PMTBLEMPREG ON
PMTBLDESIGNATION.ID = PMTBLEMPREG.DESIGNATIONID
}oj与表名一起自动创建。
这就是问题所在吗?
发布于 2014-02-01 15:09:32
SELECT PE.ID
,PE.NAME
,PE.USERNAME
,PD.DESIGNATION
,PE.SKYPEID
,PE.EMAILID
FROM PMTBLDESIGNATION PD
RIGHT OUTER JOIN PMTBLEMPREG PE ON
PD.ID = PE.DESIGNATIONID其中,PD是PMTBLDESIGNATION的表名别名,PE是PMTBLEMPREG的表名别名
更新:
缺省情况下,如果执行查询,则会检查Master数据库中的表
相反,在执行查询之前,请编写以下代码
Use Your_database_name
数据库名称是表所在的位置。
尝尝这个
希望这能有所帮助
发布于 2014-02-01 15:11:09
试着这样做
只需在CodeBehid中使用此代码
Dim SQLStatement As String = "Select pmtblempreg.Id,pmtblempreg.Name,pmtblempreg.UserName ,pmtbldesignation.Designation, pmtblempreg.skypeid,pmtblempreg.EmailId From pmtbldesignation
Right join pmtblempreg ON pmtbldesignation.Id = pmtblempreg.DesignationId"
sqldatsrc.ConnectionString = ConnectionString
sqldatsrc.SelectCommand = SQLStatement或在SQLDatasource选择命令中将查询粘贴为
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="Data Source=xx;User ID=xx;Password=xxx" ProviderName="xx" SelectCommand="Select pmtblempreg.Id,pmtblempreg.Name,pmtblempreg.UserName ,pmtbldesignation.Designation, pmtblempreg.skypeid,pmtblempreg.EmailId From pmtbldesignation
Right join pmtblempreg ON pmtbldesignation.Id = pmtblempreg.DesignationId"></asp:SqlDataSource>https://stackoverflow.com/questions/21495158
复制相似问题