SQL 2005存储过程不知所措 [英] At a loss with stored procedure for SQL 2005
问题描述
我对SQL不熟悉,我了解了通常对我有用的基础知识.
但是,我遇到了这样的情况,即代码不会从SQLDatasource对象运行在VS中.
但是,我已经从SSMSE使其正常运行,因此我想将其编写为存储过程.但是我真的不知道该如何开始.我肯定很容易做,我之前从未做过.
这是我必须正常运行的SQL.
SELECT Members.dbo.Members.LoginID,dbo.Categories.CategoryName,dbo.Listings.ListingID,dbo.Listings.Title, dbo.Listings.HasPhoto,
dbo.Listings.IsTaken,dbo.Listings.IsPickedUp,dbo.Listings.TakenDate,GetTakenUsername.LoginID AS TakenByUsername,dbo.Listings.PickedUp,
dbo.Listings. FROM dbo.Listings内部联接
dbo.Categories on dbo.Listings.CategoryID = dbo.Categories.CategoryID内部联接
Member.dbo.Members on dbo.Listings.MemberID = Members.dbo.Members.MemberID内部联接
Members.dbo.Members AS GetTakenUsername ON dbo.Listings.TakenBy = GetTakenUsername.MemberID
对此将提供任何帮助.
I''m not familar with SQL, I get around with the basics which usually works fine for me.
However, I''ve come up with a situation where the code will no not run from a SQLDatasource object in VS.
I have, however gotten it to run properly from SSMSE so I want to write it as a stored procedure. But I really have no idea how to even begin. I''m sure easy to do, I just have never done it before.
Here is the SQL that I got to run properly.
SELECT Members.dbo.Members.LoginID, dbo.Categories.CategoryName, dbo.Listings.ListingID, dbo.Listings.Title, dbo.Listings.HasPhoto,
dbo.Listings.IsTaken, dbo.Listings.IsPickedUp, dbo.Listings.TakenDate, GetTakenUsername.LoginID AS TakenByUsername, dbo.Listings.PickedUp,
dbo.Listings.TimesViewed
FROM dbo.Listings INNER JOIN
dbo.Categories ON dbo.Listings.CategoryID = dbo.Categories.CategoryID INNER JOIN
Members.dbo.Members ON dbo.Listings.MemberID = Members.dbo.Members.MemberID INNER JOIN
Members.dbo.Members AS GetTakenUsername ON dbo.Listings.TakenBy = GetTakenUsername.MemberID
WHERE (dbo.Listings.MemberID = @MemberID)
Any help with this would be greatly appreciated.
推荐答案
您是对的,这很简单.阅读BOL.
CREATE PROC MyProc<br />--Declare <br /> @MemberID INT<br /> <br />As<br /><br />SELECT Members.dbo.Members.LoginID, dbo.Categories.CategoryName, dbo.Listings.ListingID, dbo.Listings.Title, dbo.Listings.HasPhoto,<br />dbo.Listings.IsTaken, dbo.Listings.IsPickedUp, dbo.Listings.TakenDate, GetTakenUsername.LoginID AS TakenByUsername, dbo.Listings.PickedUp,<br />dbo.Listings.TimesViewed<br />FROM dbo.Listings <br /> INNER JOIN dbo.Categories ON dbo.Listings.CategoryID = dbo.Categories.CategoryID <br /> INNER JOIN Members.dbo.Members ON dbo.Listings.MemberID = Members.dbo.Members.MemberID <br /> INNER JOIN Members.dbo.Members AS GetTakenUsername ON dbo.Listings.TakenBy = GetTakenUsername.MemberID<br />WHERE (dbo.Listings.MemberID = @MemberID)
you are right, it is very simple. Read BOL.CREATE PROC MyProc<br />--Declare <br /> @MemberID INT<br /> <br />As<br /><br />SELECT Members.dbo.Members.LoginID, dbo.Categories.CategoryName, dbo.Listings.ListingID, dbo.Listings.Title, dbo.Listings.HasPhoto,<br />dbo.Listings.IsTaken, dbo.Listings.IsPickedUp, dbo.Listings.TakenDate, GetTakenUsername.LoginID AS TakenByUsername, dbo.Listings.PickedUp,<br />dbo.Listings.TimesViewed<br />FROM dbo.Listings <br /> INNER JOIN dbo.Categories ON dbo.Listings.CategoryID = dbo.Categories.CategoryID <br /> INNER JOIN Members.dbo.Members ON dbo.Listings.MemberID = Members.dbo.Members.MemberID <br /> INNER JOIN Members.dbo.Members AS GetTakenUsername ON dbo.Listings.TakenBy = GetTakenUsername.MemberID<br />WHERE (dbo.Listings.MemberID = @MemberID)
这篇关于SQL 2005存储过程不知所措的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!