我有一个交易表,每笔交易涉及 5-6 个联系人。每个联系人都有相同的字段,如姓名、地址、单元格、电子邮件等。
所以我猜最好的办法是使用相同的联系表并将其与事务表关联 5 次..所以我不需要制作相同类型的表 5 次。
当我与实体框架连接时,问题就开始了,这只需要一种关系。
我的问题是我应该为每种联系人类型制作 6 个联系人副本,还是使用 6 个连接表会更好(一个只有 2 个 ID 的表,所以我可以进行连接)?
我认为这是一个非常普遍的问题,但我找不到明确的信息,最好的方法是什么。
编辑:
我在 SQL Server 数据库中有一个包含 70 多万条记录的表,我删除了该表(一次性的事情)以释放磁盘空间,但看起来大小没有太大变化。我确实看到我可以将数据库缩小到最低限度。
这是这样做的方式吗?
上次我使用 SQL Server Management Studio 进行收缩时,花了几个小时才完成。有没有更快的方法?
我在插入时有一个触发器,但如果触发器失败,插入也会失败。
即使触发器失败,有没有办法让插入继续进行?
编辑:当输入新记录时,我使用触发器发送电子邮件。无论电子邮件是否已发送,我都希望保存记录。
我将如何从 sp 做到这一点?
我有一个表 1800 万条记录我需要将它添加到另一个表(具有相同的结构) 我尝试了导入导出向导,问题是日志变得非常大,最终它关闭了整个服务器,我不得不在中间终止进程。
我想如果我分批进行它会更快,但我不知道该怎么做。
(我不需要旧表,可以删除已复制的记录)
编辑:批量插入阻止所有操作,有没有办法阻止他在这里阻止所有人?
我们有几个表的问题,这些表非常大,会减慢系统速度。所以我的问题是,对于表中的行数来说,这个大小是否正常,以及可以做些什么来使它更小更轻,它不应该减慢一切。
CREATE TABLE [dbo].[TransactionEntry](
[TransactionEntryID] [uniqueidentifier] NOT NULL,
[TransactionID] [uniqueidentifier] NULL,
[ItemStoreID] [uniqueidentifier] NULL,
[Sort] [int] NULL,
[TransactionEntryType] [int] NOT NULL,
[Taxable] [bit] NULL,
[Qty] [decimal](19, 3) NULL,
[UOMPrice] [money] NULL,
[UOMType] [money] NULL,
[UOMQty] [decimal](19, 3) NULL,
[Total] [money] NULL,
[RegUnitPrice] [money] NULL,
[DiscountPerc] [decimal](19, 3) NULL,
[DiscountAmount] [money] NULL,
[SaleCode] [nvarchar](50) NULL,
[PriceExplanation] [nvarchar](50) NULL,
[ParentTransactionEntry] [uniqueidentifier] NULL,
[AVGCost] [money] NULL,
[Cost] [money] NULL,
[ReturnReason] [int] NULL,
[Note] [nvarchar](50) NULL,
[DepartmentID] [uniqueidentifier] NULL,
[DiscountOnTotal] [decimal](19, 3) NULL,
[Status] …
Run Code Online (Sandbox Code Playgroud)