woo*_*gie 18 sql-server-2008 sql-server
我有一个大表(约 5000 万行)我正在尝试批量插入 SQL Server,但出现错误:
无法为数据库“I 3 Stroke”中的对象“myDB”分配空间,因为“PRIMARY”文件组已满。通过删除不需要的文件、删除文件组中的对象、向文件组添加其他文件或为文件组中的现有文件设置自动增长来创建磁盘空间。
数据库中有另一个表,大约有 2500 万行。该数据库将仅在一台机器上使用,它旨在挖掘已经存在的数据,并且在任何情况下都不会超过其当前大小。
对于这种情况,解决此问题的最佳方法是什么,这样 SQL Server 就不会抱怨?这个数据库不会暴露给多个用户的解决方案是否重要?
小智 19
按着这些次序:
您希望尽可能多地为数据库分配存储空间。如果空间不足,您将在不开启自动增长的情况下收到此错误,如果开启了自动增长,则每次必须自动增长时都会对性能造成影响。如果您只是磁盘空间不足,那么这就是您的答案,您需要更大的磁盘。
小智 17
Express Edition 2014 的每个数据库限制为 10 GB。如果数据库的自动增长达到该点,SQL Server 会抛出(模糊?)错误消息,而不是提及许可证限制。可能有足够的磁盘空间,但您仍会看到此消息。
如果设计允许的补救措施:在此许可下使用多个数据库。