Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Web программирование > SQL, базы данных
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.01.2013, 00:07   #11
lishenaianevinosti
Пользователь
 
Регистрация: 29.06.2010
Сообщений: 14
По умолчанию

как создать уникальное значение при встсавке?
lishenaianevinosti вне форума Ответить с цитированием
Старый 17.01.2013, 13:18   #12
lishenaianevinosti
Пользователь
 
Регистрация: 29.06.2010
Сообщений: 14
По умолчанию

нужно создать 2 таблицы с одинаковым кол-вом столбцов и с одинаковыми названиями столбцов.
при этом в каждый столбец этих таблиц должно добавляться n-строк. при этом кол-во строк которое добавляется в 1 таблицу
должно автоматически добавляться в другую. при этом нужно чтобы при изменении данных в 1 таблице менялись данные во 2.
в идеале необходимо чтобы в 1 таблице только вводились и хранились данные, а изменялись данные только во 2 таблице.

это точное задание.

все выглядит так:

m_id Ф.И.О. наследодателя UniqueValue UniqueKey дата смерти паспортные данные
1 NULL 10 10 NULL NULL

n_id Ф.И.О. наследодателя UniqueKey дата смерти паспортные данные
1 NULL NULL NULL NULL

Ф.И.О. наследодателя дата смерти паспортные данные
NULL NULL NULL
NULL NULL NULL

Ф.И.О. наследодателя дата смерти паспортные данные
NULL NULL NULL
NULL NULL NULL
NULL NULL NULL
NULL NULL NULL

1ые 2 таблицы - с ними все нормально. а 2 другие которые ФИО наследодателя - с ними что то не так. я хотела чтобы ФИО наследодателя, дате смерти и паспортным данным из m-id и n_id таблиц присваивались неизвестные
значения default values. в итоге добавились 2 другие таблицы. в 1ой 2 строки, в другой 4 строки.
и нужно чтобы при вводе данных ФИО наследодателя, дате смерти и паспортным данным в m_id те же данные появлялись в n_id.

и еще Uniquekey и uniquevalue в 1 таблице должны быть равны 10?

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 1)
Сообщение 2627, уровень 14, состояние 1, строка 5
Нарушение "UQ__Table_1__2DE46E933B2BBE9D" ограничения UNIQUE KEY. Невозможно вставить повторяющийся ключ в объект "dbo.Table_1".
Выполнение данной инструкции было прервано.
Сообщение 2627, уровень 14, состояние 1, строка 7
Нарушение "UQ__Table_1__2DE46E933B2BBE9D" ограничения UNIQUE KEY. Невозможно вставить повторяющийся ключ в объект "dbo.Table_1".
Выполнение данной инструкции было прервано.

(строк обработано: 2)

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 1)

(строк обработано: 4)


USE [notarius]
GO

/****** Object: Table [dbo].[Table_1] Script Date: 01/12/2013 13:42:52 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO

SET ANSI_PADDING ON
GO

CREATE TABLE [dbo].[Table_1](
m_id int not null identity primary key,
[Ф.И.О. наследодателя] [char](50) NULL,
UniqueValue int null,
UniqueKey as isnull(UniqueValue, [Ф.И.О. наследодателя]) persisted,
check (UniqueValue >= 0),
unique (UniqueKey),
[дата смерти] [date] NULL,
[паспортные данные] [char](50) NULL);
GO

create table [dbo].[инф-ция о наследодателе_1]
(n_id int not null identity primary key,
[Ф.И.О. наследодателя] [char](50) NULL,
UniqueKey int null references [dbo].[Table_1] (UniqueKey) on update cascade,
[дата смерти] [date] NULL,
[паспортные данные] [char](50) NULL);
go

declare @t table (m_id int, UniqueKey int);

insert into [dbo].[Table_1]
output
inserted.m_id, inserted.UniqueKey into @t (m_id, UniqueKey)
default values;

insert into [dbo].[инф-ция о наследодателе_1]
(UniqueKey)
select
UniqueKey
from
@t;

update m_id
set
UniqueValue = 10
from
@t t join
[dbo].[Table_1] m_id on m_id.m_id = t.m_id;

select * from [dbo].[Table_1];
select * from [dbo].[инф-ция о наследодателе_1];
go

insert into [dbo].[Table_1] ([Ф.И.О. наследодателя])
default values;
insert into [dbo].[Table_1] ([дата смерти])
default values;
insert into [dbo].[Table_1] ([паспортные данные])
default values;
go

SELECT [Ф.И.О. наследодателя],[дата смерти],[паспортные данные]
FROM [dbo].[Table_1];
go

insert into [dbo].[инф-ция о наследодателе_1] ([Ф.И.О. наследодателя])
default values;
insert into [dbo].[инф-ция о наследодателе_1] ([дата смерти])
default values;
insert into [dbo].[инф-ция о наследодателе_1] ([паспортные данные])
default values;
go

SELECT [Ф.И.О. наследодателя],[дата смерти],[паспортные данные]
FROM [dbo].[инф-ция о наследодателе_1];
go

drop table [dbo].[инф-ция о наследодателе_1], [dbo].[Table_1];
go
lishenaianevinosti вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
2 столбца 2 таблицы схожие значения greendoid Microsoft Office Excel 3 21.08.2012 13:21
Передача ключевого значения в DBGrid shaurma.ru БД в Delphi 5 10.12.2011 22:26
Увеличить значения столбца на 50% saizar Microsoft Office Excel 7 02.04.2011 15:07
Удаление строк столбца совпадающих со строками другого столбца ShamanGood Microsoft Office Excel 23 18.09.2010 09:26
Как сделать автозаполнение строк, которые зависят от строк другого столбца путвфда_иил Microsoft Office Excel 19 29.08.2010 17:16