alter-table相关内容
作为标题,我有一个现有表,该表已经填充了150000条记录。我添加了一个Id列(当前为空)。 我假设我可以运行查询以用增量数字填充此列,然后将其设置为主键并打开自动递增功能。这是正确的进行方式吗?如果是这样,我该如何填写初始数字? 解决方案 否-您必须采用另一种方法:添加它一开始就是 INT IDENTITY -当您执行此操作时,它将被标识值填充: ALTER TABLE d
..
我需要重命名SQLite数据库中某些表中的几列。 我知道以前在stackoverflow上也曾提出过类似的问题,但这通常是针对SQL的,没有提到SQLite的情况。 来自SQLite文档 ALTER TABLE ,我认为不可能“轻松”地做这样的事情(即 我想知道有人知道使用SQLite做这种事情的通用SQL方法。 解决方案 此问题仅通过
..
我需要将表的主键更改为标识列,并且表中已经有很多行。 我有一个脚本来清理ID,以确保它们从1开始是连续的,在我的测试数据库上可以正常工作。 将列更改为具有标识属性的SQL命令是什么? 解决方案 您不能更改现有的标识列。 您有2个选项, 使用标识&创建新表删除现有表 使用标识&创建新列删除现有列 方法1。(新表)您可以在此处保留 创建表dbo.Tmp
..
我正在尝试在具有多个通过索引命名的列的架构中创建一个新表。 创建表rflux(pk串行主键不为空); 现在我想添加新列,例如col0 FLOAT,col1,col2,col3等。直到colN。 我知道我可以做类似的事情 ALTER TABLE rflux add col0 FLOAT列添加col1 FLOAT ...; 但我不想输入所
..
我正在尝试添加新列 ALTER TABLE“ Cidade”添加列“ BoundBox” VARCHAR(255) 到此表: “ Cidade” “ Id”整数不为空 约束“ Cidade_PK” 主键, “ Nome” varchar(120), “ EstadoId”整数不为空 约束“ Estado_Cidade_FK” 引用“ Estado”, “ P
..
我正在尝试使用此看似简单的SQL在我的Postgres 9.3数据库中的表中添加一列: ALTER TABLE测验ADD COLUMN已删除BOOLEAN NOT NULL DEFAULT false; 但是,我遇到以下错误: 错误:无法创建唯一索引“ quizzes_pkey” 详细信息:键(id)=(10557462)已重复。 奇怪的是,实
..
ALTER TABLE产品ALTER COLUMN power_price DROP DEFAULT; ALTER TABLE产品ALTER COLUMN power_price TYPE bool使用(power_price :: boolean); ALTER TABLE产品ALTER COLUMN power_price SET NOT NULL; ALTER TABLE产品A
..
表名更改后,如何更改对PostgreSQL中表的引用? 说我有: 创建表example1( id serial NOT NULL PRIMARY KEY, name varchar(100) ); 创建表example2( id serial NOT NULL主键, example1fk整数引用example1(id)可初始引用的 ); 我后来做:
..
我试图在现有表中创建新列,并使用select语句进行除法以创建要插入到新列中的数据。我已经写出的几条语句可以作为单独的查询使用,但是我无法将这些语句组合成一个查询。 我仍在学习SQL和在MySQL和PostgreSQL中使用它。上个月,我上了SQL课程,现在我正尝试做自己的项目,以保持技能的精明。 我正在做一些关于2012年选举结果的工作MN可以在我的表中使用,以了解我正在使用的数据。
..
我进行了以下设置, 创建表auth_user(id int PRIMARY KEY); CREATE TABLE links_chatpicmessage(); 我正在尝试添加列,名为发件人到 links_chatpicmessage ,这是另一个名为 auth_user 的 id 列。 要实现上述目的,我正在终端上尝试以下操作: ALTER TAB
..
是否可以在单个语句中重命名多列,类似于以下内容: ALTER TABLE用户 RENAME COLUMN用户名至user_name, RENAME COLUMN用户名至real_name; 解决方案 否。 虽然可以组合其他操作,但使用 RENAME 是不可能的。 手册: 所有在单个表上起作用的 ALTER TABLE 形式,除了 R
..
我有一个表,其中包含1600列,并希望在其中添加更多字段,但是根据数据库规则,由于达到了更高的限制,不允许创建更多字段。 所以我决定从表中删除一些不需要的字段,然后做到了。再次,我尝试在该表中添加几个字段,但它会引发相同的错误,即那里有1600列您不能添加更多。 我浏览了其他Postgresql表“ pg_attribute ”,所有这些字段都在其中,并且删除参数为True。 我
..
PostgreSQL不允许 ALTER TABLE t如果存在c1到c2 ...或类似的东西。但是,能够编写修改DB结构的脚本非常方便,该脚本可以再次运行而无需先检查它是否已经运行。 如何编写PostgreSQL的功能可以做到这一点? 解决方案 HI尝试此解决方案。 DO $$ 开始 如果存在(选择* 从information_sche
..
我使用以下查询(已针对Internet进行了消毒)向我的Postgresql数据库添加新的“ NOT NULL”列: ALTER TABLE mytable ADD COLUMN mycolumn字符varianting(50)NOT NULL; 每次运行此查询时,都会收到以下错误消息: 错误:“ mycolumn”列包含空值 我很困
..
我试图使用一个函数来设置表的n_distinct值.代码如下: create temporary table _temp ( id integer ); create function pg_temp.setdistinct(_cnt real) returns void as $$ begin alter table _temp alter column id set (
..
考虑一下我在Oracle 10G中创建的这个初始表: ╔═════════════════════════════════╗ ║ CUSTOMER_ID ACC_NO ACC_BALANCE ║ ╠═════════════════════════════════╣ ║ 100 200 1000 ║ ║ 101 150
..
我有一个需要修改数据库表中列默认值的要求.该表已经是数据库中的现有表,并且当前该列的默认值为NULL. 现在,如果将新的默认值添加到此列,如果我是正确的话,它将列的所有现有NULL更新为新的DEfault值.有没有一种方法可以不执行此操作,但仍在列上设置新的默认值. 我的意思是我不想更新现有的NULL,并希望它们保留为NULL. 对此有任何帮助,我们深表感谢. 谢谢 解决方案 您对将
..
我在Oracle SQL Developer中创建了表Test_Project2.之后,我意识到proj_name列的大小很小,因此我决定使用follwoing语句修改该列 ALTER TABLE TEST_PROJECT2 MODIFY proj_name VARCHAR2(300); 但是由于某种原因,Oracle SQL Developer用红色强调了分号,我不知道什么是错误以及如
..
我有一个拥有10年数据的表(我已经进行了转储). 我想在表中的一个日期键列上对现有表进行分区. 我看到的大多数示例都是使用CREATE TABLE..PARTITION BY RANGE...添加新分区的.但是我的表是现有表. 我认为我需要一些ALTER语句. ALTER TABLE TABLE_NAME PARTITION BY RANGE(CREATED_DATE)
..
ALTER TABLE testTable ADD column1 NUMBER(1) DEFAULT 0 NOT NULL AFTER column2; 为什么我也不能在Oracle中使用mySql语法?上面的命令在MySql中有效.你能给我一个等效的东西吗? Error report: SQL Error: ORA-01735: invalid ALTER TABLE option
..