DRI

27/09/2004 - 17:18 por rolando | Informe spam
que significa la columna DRI
a la hora de dar permisos a los objetos ???

Gracias

Preguntas similare

Leer las respuestas

#1 Isaías
27/09/2004 - 18:06 | Informe spam
Son las siglas de Data Referential Integrity
Respuesta Responder a este mensaje
#2 MAURICIO
27/09/2004 - 18:06 | Informe spam
La columna DRI (declarative referential integrity) te
permite usar GRANT, REVOKE o DENY para el objeto que
selecciones, esto te permitira determinar si habran
operaciones en cascada o no
Chequea el siguiente ejemplo:

Script Orders / OrderDetails
IF OBJECT_ID('OrderDetails') IS NOT NULL DROP TABLE
OrderDetails
GO
IF OBJECT_ID('Orders') IS NOT NULL DROP TABLE Orders
GO

CREATE TABLE Orders
(
orderid int NOT NULL,
customerid char(5) NOT NULL,
orderdate datetime NOT NULL,
CONSTRAINT PK_Orders_OrderID PRIMARY KEY(orderid)
)

CREATE TABLE OrderDetails
(
orderid int NOT NULL,
partid int NOT NULL,
quantity int NOT NULL,
CONSTRAINT PK_OrderDetails_OrderID_partid
PRIMARY KEY(orderid, partid)
)

SET NOCOUNT ON

INSERT INTO Orders VALUES(10001, 'FRODO', '19990417')
INSERT INTO Orders VALUES(10002, 'GNDLF', '19990418')
INSERT INTO Orders VALUES(10003, 'BILBO', '19990419')

INSERT INTO OrderDetails VALUES(10001, 11, 12)
INSERT INTO OrderDetails VALUES(10001, 42, 10)
INSERT INTO OrderDetails VALUES(10001, 72, 5)
INSERT INTO OrderDetails VALUES(10002, 14, 9)
INSERT INTO OrderDetails VALUES(10002, 51, 40)
INSERT INTO OrderDetails VALUES(10003, 41, 10)
INSERT INTO OrderDetails VALUES(10003, 61, 35)
INSERT INTO OrderDetails VALUES(10003, 65, 15)

******************************************
IF OBJECT_ID('Employees') IS NOT NULL DROP TABLE Employees
GO

CREATE TABLE Employees
(
empid int NOT NULL,
mgrid int NULL,
empname varchar(25) NOT NULL,
salary money NOT NULL,
CONSTRAINT PK_Employees_empid PRIMARY KEY(empid)
)

SET NOCOUNT ON

INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 1, NULL, 'Nancy', $10000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 2, 1, 'Andrew', $5000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 3, 1, 'Janet', $5000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 4, 1, 'Margaret',$5000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 5, 2, 'Steven', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 6, 2, 'Michael', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 7, 3, 'Robert', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 8, 3, 'Laura', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES( 9, 3, 'Ann', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES(10, 4, 'Ina', $2500.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES(11, 7, 'David', $2000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES(12, 7, 'Ron', $2000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES(13, 7, 'Dan', $2000.00)
INSERT INTO employees(empid, mgrid, empname, salary)
VALUES(14, 11, 'James', $1500.00)



**********************************************************
***
ALTER TABLE OrderDetails ADD
CONSTRAINT FK_OrderDetails_Orders
FOREIGN KEY(orderid)
REFERENCES Orders(orderid)
ON DELETE NO ACTION
ON UPDATE NO ACTION

**********************************************************
******
ALTER TABLE OrderDetails ADD
CONSTRAINT FK_OrderDetails_Orders
FOREIGN KEY(orderid)
REFERENCES Orders(orderid)
ON DELETE CASCADE
ON UPDATE CASCADE



que significa la columna DRI
a la hora de dar permisos a los objetos ???

Gracias
.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida