我在SQL Server 2008中编写了以下存储过程:
ALTER Procedure [dbo].[usp_TodayNumberOfRegisteration]
(
@TodayShamsiDate nvarchar
)
AS
Select COUNT(csci.Id) as cc1 FROM dbo.Complex_Service_Cart_Items csci INNER JOIN dbo.Complex_Service_Cart csc
ON csci.Id_Complex_Service_Cart=csc.Id
WHERE (csci.Id_Complex_Service=&
我有一个存储过程,它使用了几个函数,这些函数正在比较一些数据。例如:
功能一:
if @x is not null
begin
if @x > @y
return 'y cannot be less than x'
在存储过程中,我声明了一些变量,它们是我们的X和Y。
然后我启动新的事务,例如:
begin tran test;
exec [dbo].[My_stored_procedure] # stored prodecure which using function I wrote above.
我以前使用过此方法来返回更改的行数。我想运行一个insert方法,insert在存储过程中运行良好,但ExecuteNonQuery的返回值总是返回-1。
下面是我的C#代码:
int ret = 0;
using (SqlConnection conn = new SqlConnection(this.ConnectionString))
{
using (SqlCommand cmd = new SqlCommand(QueryName, conn))
{
conn.Open();
if (Params != null)
我有一个存储过程,它接受一个部门名称,并以int的形式返回部门Id。我正在尝试使用该过程来确定具有指定名称的部门是否已经存在。我如何才能做到这一点呢?如果存储过程没有返回任何结果,那么表示的值是什么?它是空的吗?我是否应该使用单独的存储过程来确定部门是否已经存在?下面是我当前的存储过程:
@Department_Name varchar(100),
@Id int OUTPUT
AS
SET NOCOUNT ON
SELECT @Id = Id FROM Department
WHERE Name = @Department_Name
RETURN @Id
我觉得我要放弃整个项目,重新开始这件事给我带来的挫折感。所以我非常感谢任何人的洞察力..。
我有SQL Server存储过程,需要执行某些逻辑检查才能继续。如果这些检查失败,则调用RAISERROR()并返回SP。下面是其中一个检查的示例:
IF DATALENGTH(@LastName) < 2
BEGIN
SELECT @err_msg = CONVERT(NVARCHAR(200), @LastName);
RAISERROR('The "Single / Last Name" param provided is too short: %s&
当我对只使用存储过程的大型.NET应用程序进行故障排除时,我会从SQL Server Profiler中捕获包含SP名称的sql,然后很容易在源文件中对SP进行全局搜索,并找到生成该SQL的确切行。
使用Entity Framework时,由于SQL语句的动态创建,这是不可能的。但是,有时我会从生产环境中捕获一些有问题的sql语句,并想知道它们是从代码中的什么位置生成的。
我知道可以让EF按需生成日志和跟踪。这可能会给繁忙的服务器带来负担,并产生过多的日志。我读了一些关于使用mini profiler的资料,但不确定它是否适合我的需求,因为我没有访问生产服务器的权限。但是,我有权将SQL se
我正在MVC3应用程序中使用MVC3,我正在寻找一种方法来查看给定工作组中的所有联系人。在我指定的控制器中:
var wg = from w in _repo.Workgroups.Include("Contact").ToList();
但我得到了以下错误:
“System.Linq.IQueryable”不包含“Include”的定义,也没有包含“接受”类型为“System.Linq.IQueryable”的第一个参数的扩展方法(您是缺少使用指令还是程序集引用?)
我认为这个方法是内置在EF4中的。我有办法启用它吗?
我有一个LINQ无法处理的简单存储过程。我尝试过使用和不使用临时表的变体,但总是得到相同的结果:“无法检测到以下存储过程的返回类型。”
下面是我尝试过的两个变体:
CREATE PROCEDURE GetBOQuestions @JobId int AS
BEGIN
SELECT Id, ExemptionCode, Prose [Question], InputType, DisplayOrder
FROM Assessor.FLSA.BlackOpsQuestion Q
LEFT JOIN Common.dbo.F
ALTER PROCEDURE dbo.StoredProcedure8
@emp_code bigint,
@co_id bigint,
@p decimal(8,2) output
AS
SELECT @p = (select sum(tran_value) from emp_ded_ben_trans where emp_code=@emp_code and co_id=@co_id and period_flg=2 and tax_flg=0)
RETURN
CREATE OR REPLACE PROCEDURE inner_proc(INOUT a integer, b integer, INOUT c
integer)
LANGUAGE plpgsql
AS $$
BEGIN
a := b * a;
c := b * c;
END;
$$
在snowflake中,经过过程转换后,结果如下所示
CREATE OR REPLACE PROCEDURE inner_proc
(
INOUT a,
b FLOAT,
INOUT c
)
RETURNS