我写的存储过程有问题。如果 select 语句不返回任何值,我希望该过程返回 -1。但是,当 select 语句返回结果时,我想返回@@rowCount.
当我运行存储过程时,它在没有结果时返回 -1,但在有结果时返回 1。
关于我需要改变什么的任何建议?
-- Add the parameters for the stored procedure here
@LoginName VARCHAR(25),
@Password VARCHAR(10),
@rowsAffected INT OUTPUT
AS
BEGIN
SET NOCOUNT ON;
DECLARE @PasswordSalt VARCHAR(36)
SELECT @PasswordSalt = (SELECT PasswordSalt FROM Employee WHERE LoginName = @LoginName)
SELECT
Employee.ID, FirstName, LastName, LoginName, Email, StatusTypeID,
Description AS StatusDescription
FROM
Employee
JOIN
StatusType st ON Employee.StatusTypeID = st.ID
WHERE
LoginName = @LoginName
AND PasswordHash = HashBytes('SHA2_512', @Password + Cast(@PasswordSalt AS nvarchar(36)))
AND …Run Code Online (Sandbox Code Playgroud) 我正在使用OpenFile对话框打开一个文件,我想确认该文件是excel格式.
我打开的文件是"C:\ Desktop\Distribution.xls",但我的if语句的两个条件都评估为true.我应该使用另一种方法吗?
DialogResult result = openFileDialog1.ShowDialog();
if (result==DialogResult.OK)
{
file = openFileDialog1.FileName;
file = file.Trim();
if (!file.EndsWith(".xlsx")||!file.EndsWith(".xls"))
{
MessageBox.Show("Incorrect file format. Please save file in an .xls format");
}
else
{
book = application.Workbooks.Open(file);
sheet = (Worksheet)book.Worksheets[1];
range = sheet.get_Range("A1", "A1".ToString());
range.EntireRow.Delete(XlDirection.xlUp);
sheet.Cells[1, 2].EntireColumn.NumberFormat = "@";
book.SaveAs(csvConverstion, XlFileFormat.xlCSV);
book.Close(false, Type.Missing, Type.Missing);
application.Quit();
}
Run Code Online (Sandbox Code Playgroud)