Решение: 1. Перенос структуры. Формируем и запускаем SQL-скрипт формирования структуры базы. В MSEE это делается нажатием на базе и “Генерация скпита” для локальной базы, а потом запуском этого скрипта на […]
Как вставлять в базу значения первичного ключа (id) в SQL Server
Решение: использование SET IDENTITY_INSERT testIdentity ON; Как использовать: CREATE TABLE testIdentity (id int IDENTITY (1,1), name nvarchar(100)); INSERT INTO testIdentity(name) VALUES (‘name1’); e Row will be (1, name1) INSERT INTO […]
Как программно установить default value для столбца
Решение: ALTER TABLE Employee ADD CONSTRAINT DF_SomeName DEFAULT N’SANDNES’ FOR CityBorn;
Как проверить корректно ли написан запрос sql программно
Решение: SET PARSEONLY ON –Текст вашего запроса для проверки на корректность SET PARSEONLY OFF Если SET PARSEONLY имеет значение ON, SQL Server только делает структурный анализ запроса. Когда SET PARSEONLY […]
Как превратить таблицу в строку значений, разделяемых запятыми
Решение: USE AdventureWorks GO DECLARE @listStr VARCHAR(MAX) SELECT @listStr = COALESCE(@listStr+’,’ ,”) + Name FROM Production.Product SELECT @listStr GO
Как правильно работать с курсорами
Решение: http://stackoverflow.com/questions/3608916/solving-a-problem-with-cursors DECLARE MyCursor1 CURSOR FOR SELECT Value FROM [dbo].[split] (‘1;2;3;4;’,’;’) open MyCursor1 declare @attrID int, @values nvarchar(256) select @@FETCH_STATUs WHILE (1=1) BEGIN FETCH next from MyCursor1 INTO @attrID select […]
Как по тихому проверить на правильность преобразование в int и float
Решение: DECLARE @input VARCHAR(11) = ‘2323’ select CAST(CASE WHEN @input NOT LIKE ‘%[^0-9]%’ THEN @input END AS INT) DECLARE @input2 VARCHAR(11) = ‘23.23’ select CAST(CASE WHEN @input2 NOT LIKE ‘%[^0-9.]%’ […]
Как отключить все Contraints в базе?
Решение: EXEC sp_msforeachtable “ALTER TABLE ? NOCHECK CONSTRAINT all” Подробнее: If you want to disable all constraints in the database just run this code:– disable all constraints EXEC sp_msforeachtable “ALTER […]
Как копировать данные через запросы из одной базы в другую
Решение: This is a quick run through to generate Insert statements for all of the data in your table, using no scripts or add-ins to SQL Management Studio 2008: Right […]
Как использовать функции в хранимых процедурах(передача данных в виде таблице). Очень удобно для модульной разработки.
Решение: Сама функция: CREATE FUNCTION SalesByStore (@id int) RETURNS TABLE AS RETURN (SELECT * FROM bsh_products WHERE partID=@id) Вызов: ALTER PROCEDURE [dbo].[tst_Proc1] AS SET NOCOUNT ON SELECT * FROM SalesByStore(4)