标签: alter

alter table mysql离线与否?

我需要在当前表中添加一列.

这张桌子在白天和晚上都经常使用.我发现我需要使用此处找到的alter命令进行更改

http://dev.mysql.com/doc/refman/5.1/en/alter-table.html
Run Code Online (Sandbox Code Playgroud)

我在开发服务器上测试了它.

我花了大约2个小时才完成.现在我想在生产服务器上执行此操作?

这会阻止我的网站吗?

mysql alter

11
推荐指数
1
解决办法
1598
查看次数

如何使用默认值修改列的数据类型

我正在尝试将SQL Server中列的数据类型从tinyint更改为smallint.

但是我的列上有一个默认值,我不知道约束的名称.

有一个简单的方法吗?

由于默认约束,这不起作用:

ALTER TABLE mytable
Alter Column myColumn smallint NOT NULL default 1
Run Code Online (Sandbox Code Playgroud)

sql sql-server default-value alter

11
推荐指数
1
解决办法
3万
查看次数

如果存在于mysql中,如何删除列?

ALTER TABLE user DROP COLUMN registered_date
Run Code Online (Sandbox Code Playgroud)

我们可以使用上面的命令删除一列.但是,如果列registered_date存在,我该如何删除它?

mysql sql alter

11
推荐指数
1
解决办法
2万
查看次数

非常大的表上的MySQL ALTER TABLE - 运行它是否安全?

我有一个带有400万行MyISAM表的MySQL数据库.我每周更新一次这个表约2000个新行.更新后,我然后改变这样的表:

ALTER TABLE x ORDER BY PK DESC
Run Code Online (Sandbox Code Playgroud)

我按主键字段按降序排列表.这对我的开发机器(带3GB内存的Windows)没有任何问题.有三次我在生产Linux服务器上成功尝试过它(512MB内存 - 并且每次大约6分钟就能实现结果排序表),最后一次尝试它我不得不在大约30分钟后停止查询并重建备份数据库.

一个512MB的服务器可以在这么大的表上处理那个alter语句吗?我已经读过创建临时表来执行ALTER TABLE命令.

问题:这个alter命令可以安全运行吗?改变桌子的预计时间应该是多少?

mysql primary-key alter

10
推荐指数
1
解决办法
9947
查看次数

SQL Server:alter table,如何添加SPARSE定义

我想改变我的表并向SPARSE包含大量NULL值的所有字段添加选项.这个ALTER TABLE命令的正确语法是什么?

sql sql-server alter sql-server-2008

10
推荐指数
2
解决办法
3996
查看次数

如何在mysql中一次更改多个表?

我试图改变多个表并将username VARCHAR列的大小更改为999,因为它的当前大小太小,现在事情搞砸了.我怎样才能做到这一点?

我尝试了以下它,它适用于一个表,但在尝试更新多个表名时,它返回错误:

ALTER TABLE  `TABLE_NAME` CHANGE `username` VARCHAR( 999 ) CHARACTER SET latin1 COLLATE latin1_swedish_ci NOT NULL
Run Code Online (Sandbox Code Playgroud)

mysql alter

10
推荐指数
1
解决办法
2万
查看次数

如何使用命令行更改MySQL表的外键

如何使用命令行更改MySQL中的现有表,将外键设置为另一个表?

mysql alter-table alter

10
推荐指数
1
解决办法
4万
查看次数

如何在不丢失数据的情况下改变MySQL表?

在我的应用程序中,我进行了一些更改并将它们上传到测试服务器.因为我无法访问服务器数据库,所以我运行ALTER命令对其进行更改.

使用方法我在服务器上运行以下命令:

ALTER TABLE `blahblahtable` ADD COLUMN `newcolumn` INT(12) NOT NULL
Run Code Online (Sandbox Code Playgroud)

之后,我发现表的所有数据都已删除.现在表格是空白的.

所以我需要改变表而不删除他的数据.有没有办法做到这一点?

mysql database alter

9
推荐指数
1
解决办法
1万
查看次数

如何使用Alter在SQL-Server 2014中的现有View中添加新列

我创建了一个基于另一个视图和一个表的视图.我想添加varchar类型的新列.我确实喜欢下面,但是语法错误?我是SQL的新手,所以,无法理解

ALTER VIEW [dbo].[MyView]
ADD New_Col varchar(10) null 
GO
Run Code Online (Sandbox Code Playgroud)

sql sql-server view alter

9
推荐指数
1
解决办法
5万
查看次数

将 MySQL 表列类型从 INT 更改为 BIGINT

我有一个包含不到 5000 万行的表。它达到了 INT 的限制 (2147483647)。目前该表尚未被写入。

我计划将 ID 列从 INT 更改为 BIGINT。我正在使用 Rails 迁移通过以下迁移来执行此操作:

  def up
    execute('ALTER TABLE table_name MODIFY COLUMN id BIGINT(8) NOT NULL AUTO_INCREMENT')
  end
Run Code Online (Sandbox Code Playgroud)

我已经在 2000 行的数据集上进行了本地测试,效果很好。在 5000 万条上运行ALTER TABLE命令应该没问题,因为目前该表没有被使用?

我想在运行迁移之前进行检查。任何意见将不胜感激,谢谢!

mysql ruby-on-rails alter

9
推荐指数
1
解决办法
1万
查看次数