Здравствуйте, vmpire, Вы писали:
V>Здравствуйте, ydabkaa, Вы писали:
Y>>Программа отправляет серверу вот это:
Y>>exec sp_executesql N'SELECT dbo.Get_SocialNumber(@issuer_number, @region_number, @sex, @birthday, @birthmonth, @birthyear, @_unique_number) AS result',N'@issuer_number int,@region_number int,@sex
Y>>bit,@birthday int,@birthmonth int,@birthyear int,@_unique_number real',@issuer_number=964390,@region_number=39,@sex=1,@birthday=1,@birthmonth=3,@birthyear=2009,@_unique_number=137
Y>>Сервер возвращает null, хотя мне всего-то нужно, чтобы он вместо переменных подставил значения и вернул код.
Y>>Впрочем тут уже ручками быстрее написать.
V>Синтаксис, вроде, правильный, проблема скорее вего не в SQL а в C#.
V>Хотя вызывать это из C# можно удобнее:
V>V>DbCommand cmd = new SqlCommand(
V>"SELECT dbo.Get_SocialNumber(@issuer_number, @region_number, @sex, @birthday, @birthmonth, @birthyear, @_unique_number)",
V>connection));
V>cmd.CommandType = CommandType.Text;
V>cmd.Parameters.Add(new SqlParameter("@issuer_number", 123));
V>cmd.Parameters.Add(new SqlParameter("@region_number", 456));
V>cmd.Parameters.Add(new SqlParameter("@sex", true));
V>cmd.Parameters.Add(new SqlParameter("@birthday", DateTime.Now));
V>cmd.Parameters.Add(new SqlParameter("@birthmonth", 11));
V>cmd.Parameters.Add(new SqlParameter("@birthyear", 1917));
V>cmd.Parameters.Add(new SqlParameter("@_unique_number", 789));
V>ovject result = cmd.ExecuteNoQuery();
V>
Да,к этому в итоге и пришел.
Спасибо.