我试图找出决定是否添加自动递增整数作为表的主键的"最佳实践".
假设我有一个包含化学元素数据的表格.每个元素的原子序数是唯一的,永远不会改变.因此,不是为每列使用自动递增整数,而是使用原子序数可能更有意义,对吗?
如果我有一张书桌,那也是如此吗?我应该使用ISBN还是主键的自动递增整数?或者包含每个人的SSN的员工表?
我正在设计一个由Web应用程序使用的小型SQL数据库.
假设一个特定的表有一个Name字段,其中不允许两行具有相同的值.但是,用户可以随时更改"名称"字段.
此表中的主键将用作其他表中的外键.因此,如果将Name字段用作主键,则需要将任何更改传播到其他表.另一方面,唯一性要求将自动处理.
我的直觉是添加一个整数字段作为主键,可以由数据库自动填充.有这个领域有什么意义,还是浪费时间?
我知道COLUMNS_UPDATED,我需要一些快速的快捷方式(如果有人做了,我已经制作了一个,但如果有人可以节省我的时间,我会恭维它)
我需要基本上只有更新列值的XML,我需要这个用于复制目的.
SELECT*FROM inserted为我提供了每一列,但我只需要更新的列.
像下面这样......
CREATE TRIGGER DBCustomers_Insert
ON DBCustomers
AFTER UPDATE
AS
BEGIN
DECLARE @sql as NVARCHAR(1024);
SET @sql = 'SELECT ';
I NEED HELP FOR FOLLOWING LINE ...., I can manually write every column, but I need
an automated routin which can work regardless of column specification
for each column, if its modified append $sql = ',' + columnname...
SET @sql = $sql + ' FROM inserted FOR XML RAW';
DECLARE @x as XML;
SET @x …Run Code Online (Sandbox Code Playgroud)