标签: alter

将布尔列添加到现有表中

我正在尝试将布尔列添加到现有表中

alter table chatuser add activerecord bool;
alter table chatuser add activerecord boolean;
Run Code Online (Sandbox Code Playgroud)

其中activerecord是我的布尔列

这些查询都不起作用.如何在现有表中添加布尔列?

mysql alter

22
推荐指数
3
解决办法
7万
查看次数

SQL Server中的'CREATE TABLE ... LIKE ...'相当于什么

我正在使用SQL Server(我是一个SQL Server noob)并尝试更改表.我想CREATE TABLE LIKE安全地存储数据,同时我删除键和约束以及SQL Server在原始表上更改时似乎需要的所有其他rigamorole但我无法找到该命令的匹配...

t-sql sql-server alter

21
推荐指数
2
解决办法
3万
查看次数

启用数据捕获时,在DB2中使列可为空

我正在使用db2版本9.7*,似乎不可能以任何直接的方式使NOT NULL列可以为空.

不幸的是,使用更加开发人员友好的数据库的解决方案不可用.基本上,在MySQL中,我想做类似的事情(其中MY_COLUMN曾经是VARCHAR(200)NOT NULL):

ALTER TABLE MY_TABLE MODIFY COLUMN MY_COLUMN VARCHAR(200);
Run Code Online (Sandbox Code Playgroud)

db2 nullable alter non-nullable notnull

19
推荐指数
3
解决办法
6万
查看次数

更改SQL表 - 允许NULL列值

最初,表"MyTable"已按以下方式定义:

CREATE TABLE IF NOT EXISTS `MyTable` (
  `Col1` smallint(6) NOT NULL AUTO_INCREMENT,
  `Col2` smallint(6) DEFAULT NULL,
  `Col3` varchar(20) NOT NULL,
);
Run Code Online (Sandbox Code Playgroud)

如何以"Col 3"列允许为NULL的方式更新它?

mysql sql alter

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

在"架构"构建器中更改列长度?

我有两个字段,我需要增加字符限制.我仔细阅读了文档,令我惊讶的是我找不到它的选择.有可能吗?如果没有,我该如何解决这个问题呢?

我可以删除列并使用正确的属性重新创建它,但我不想丢失数据库中的任何数据.

database schema builder alter laravel

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

更改列集非空失败

考虑下表,大约有10M行

CREATE TABLE user
(
  id bigint NOT NULL,
  ...
  CONSTRAINT user_pk PRIMARY KEY (id)
)
WITH (
  OIDS=FALSE
)
Run Code Online (Sandbox Code Playgroud)

然后我应用了以下更改

ALTER TABLE USER ADD COLUMN BUSINESS_ID    VARCHAR2(50);
--OK
UPDATE USER SET BUSINESS_ID = ID; //~1500 sec
--OK
ALTER TABLE USER ALTER COLUMN BUSINESS_ID SET NOT NULL;

    ERROR: column "business_id" contains null values
    SQL state: 23502
Run Code Online (Sandbox Code Playgroud)

这很奇怪,因为id列(已复制到business_id列)不能包含空值,因为它是主键,但要确保我检查它

select count(*) from USER where BUSINESS_ID is null
    --0 records
Run Code Online (Sandbox Code Playgroud)

我怀疑这是一个错误,只是想知道我是否遗漏了一些微不足道的东西

postgresql alter enterprisedb notnull

19
推荐指数
2
解决办法
3万
查看次数

从MySQL中的列中删除NOT NULL限制

如何更改限制为NOT NULL的列以接受NULL值?

mysql null alter

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

升级SQlite表的难度

我有一个运行一个名为ANIMAL的工作表的应用程序.首次创建此表时,它只包含_id和animal_name列.

现在我正在努力扩展它,包括一个animal_biography专栏,但是我有一点困难.首先我认为我只是升级我的CREATE_TABLE语句以包含动物生物:

private static final String DATABASE_CREATE = 



            "create table " + ANIMALS_TABLE +

            " (_id integer primary key autoincrement, " + 

            "animal_name text not null, " +

            "biography text not null);"; 
Run Code Online (Sandbox Code Playgroud)

然而,看着logcat它告诉我当试图插入时,列传记不存在.

现在,我尝试使用onUpgrade()包括代码来升级数据库

db.execSQL("ALTER TABLE" + DATABASE_NAME);
db.execSQL(DATABASE_CREATE);
Run Code Online (Sandbox Code Playgroud)

但这也没有解决问题.有没有人有任何关于如何解决这个问题的指示?

sqlite android alter

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

mysql使用外键将int更改为bigint

我想将数据库中某些主键列的数据类型从INT更改为BIGINT.以下定义是一个玩具示例来说明问题:

CREATE TABLE IF NOT EXISTS `owner` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `thing_id` int(11) NOT NULL,
  PRIMARY KEY (`id`),
  KEY `thing_id` (`thing_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

DROP TABLE IF EXISTS `thing`;
CREATE TABLE IF NOT EXISTS `thing` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=1 ;

ALTER TABLE `owner`
  ADD CONSTRAINT `owner_ibfk_1` FOREIGN KEY (`thing_id`) REFERENCES `thing` (`id`);
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试执行以下命令之一时:

ALTER TABLE `thing` CHANGE `id` `id` BIGINT NOT NULL AUTO_INCREMENT; …
Run Code Online (Sandbox Code Playgroud)

mysql int foreign-keys alter bigint

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

如何从Mysql中的另一个表添加一个表到一个表?

我有两张桌子

  1. 表格1
  2. 表2

Tabel1包含2列

  1. ID
  2. 名称

Tabel2包含2列

  1. ID
  2. 年龄

想要将table2中的age列添加到table1(WHERE table1.id = table2.id)

然后table1应该包含3列

  1. ID
  2. 名称
  3. 年龄

mysql sql select alter sql-update

12
推荐指数
2
解决办法
5万
查看次数