【问题标题】:What is the syntax of stored procedure in SQL Server 2012SQL Server 2012中存储过程的语法是什么
【发布时间】:2014-03-11 19:06:30
【问题描述】:

我正在尝试做一个简单的内部联接来选择一行,甚至只是从 2 个表的内部联接中获取 ID,一个是常规 ASP.NET 用户表,另一个是我的(解释器)不知何故我的语法是无法访问 -

http://pastebin.com/4aDPrtst

我认为它期望像

[Common].[tbl_Interpreter_Account].[AspNetUsers]

所有[][][][,但我不确定

【问题讨论】:

  • 我们可以先问“什么是 SQL Server 2013”​​吗?该产品不存在。
  • 我认为 SQL Server 2013 是 VS 2013 附带的 SQL Server 的 express 版本 :)
  • @marc_s 我知道会是什么:)
  • @HamletHakobyan:我以为你知道 :-)

标签: sql-server stored-procedures sql-server-2012 asp.net-4.0


【解决方案1】:

假设[Common] 是您的数据库架构,[AspNetUsers] 是使用会员服务(或通过其他方式)自动创建的表,我不确定[tbl_Interpreter_Account] 指的是什么。你能澄清一下吗?

还需要更正连接。 您正在加入以下两个表:AspNetUsersAddIntrepeter。但是连接条件在其他表上Interpreter_Account

试试以下方法:

在过程顶部插入您的数据库名称。

USE [Common]

CREATE PROCEDURE [dbo].[GetIntIdByEmail]
    @email  nvarchar(50)
AS
SELECT 
AspNetUsers.UserName
FROM [AspNetUsers] users 
INNER JOIN  [<<Your_Table>>] interpreter ON users.Id = interpreter.<<your_Matching_Column>>
WHERE interpreter.contact_email = @email
GO

【讨论】:

  • SELECT AspNetUsers.Id FROM [AspNetUsers] users >>> 用户来自哪里? INNER JOIN [>] 解释器 ON users.Id = Interpreter_Account.AspNetUserId WHERE Interpreter_Acount_email = @email
  • 谢谢 pkamathk。那是我第一次使用这个论坛,我 4 年前在 asp.net 2 上离开了 asp.net,现在在 .net 4 上做一个项目
  • 感谢大家。最终起作用的代码是:pastebin.com/xd6hgjGY
猜你喜欢
  • 2011-03-24
  • 1970-01-01
  • 1970-01-01
  • 2019-10-17
  • 1970-01-01
  • 2013-02-09
  • 1970-01-01
  • 1970-01-01
  • 2013-11-11
相关资源
最近更新 更多