当前位置:首页 » 编程语言 » 修改表主建sql
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

修改表主建sql

发布时间: 2022-09-20 22:41:17

sql怎样用命令设置主键

我现在发现使用较少的语句也可以啦,比如:alter
tabler
badd
primary
key(id)将表b中的字段id设为主键这个方法和你的视觉上的效果是一样的,就是不晓得内部是否一样的。

Ⅱ SQL中主键列能修改吗

如果表之前有主键则先删除:
alter table 表名 drop constraint 主键名
修改主键:
alter table 表名 add constraint 主键名 primary key (column1,column2,....,column)
注意:这里的主键名是自己定义的一个字符串,可以不是表中字段名(习惯写成:PK_表名 的格式),不过要牢记啊,删除的时候用到的也是这个名!括号中的才是表中存在的字段。

Ⅲ sql怎么设置主键

1.主键语法
①创建时:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno) );
②修改时:ALTER TABLE table_name ADD CONSTRAINT pk_name PRIMARY KEY(列名);
前提是原先没有设置主键。
2.外键语法
①创建时:create table sc (
studentno int,
courseid int,
score int,
foreign key (courseid) );
②修改时:
ALTER TABLE news_info[子表名] ADD CONSTRAINT FK_news_info_news_type[约束名] FOREIGN KEY (info_id)[子表列] REFERENCES news_type[主表名] (id)[主表列] ;
3.使用组合主键
如果一列不能唯一区分一个表里的记录时,可以考虑多个列组合起来达到区分表记录的唯一性,形式
①创建时:create table sc (
studentno int,
courseid int,
score int,
primary key (studentno,courseid) );
②修改时:alter table tb_name add primary key (字段1,字段2,字段3);
前提是原来表中没有设置主键,若原先已有主键则会报错。

Ⅳ 如何通过PL/SQL修改某一个表的结构(主键

方法/步骤

登录PL/SQL Developer

找到要修改数据的表,右击该表,选择“编辑数据”

出现下图这样的窗口,注意方框中的信息。
小锁此时打开了,说明可以编辑数据了,后面的加减号表示增加、删除记录。
最后一列的rowid不能修改,这是物理标识列。

修改了数据后,可以看到对号变成绿色了,此时要提交的话需要点击这个对号。

点击对号之后并没有真正保存,还需要提交事务,这样才算是真正修改了。
点击对号之后,还要点击提交事务按钮。

弹出确认提示框,点击是即可。

我们还可以在sql窗口中输入‘select t.*,t.rowid from表 t’,按执行键,然后再点击那个锁,即可开始修改表数据。

如果输入的是‘select t.* from 表 t’,这条语句和上面的那个语句查询结果是相同的,但因为多查了个rowid,所以才能修改数据。

Ⅳ 如何更改SQL数据库中的主键数据

设计数据库结构时,应该避免主键字段有意义,比如用学生学号、人的身份证号做主键都不好,因为这些数据后期都可能要改动,最好用一个序列号做主键去关联所有的子表,这样就不需要改主表主键值了。
你这个问题可以这样解决,先把要改主键的记录复制一条,主键用新值,然后把所有子表的对应记录改掉,最后删除主表的原记录。

Ⅵ 用SQL脚本修改表的的主键问题

不知道你什么数据库.
假如是 SQL Server 的话, 主键必须先非空

1> CREATE TABLE test_tab (
2> id INT,
3> name VARCHAR(10),
4> age INT,
5> val VARCHAR(10)
6> );
7> go
1> ALTER TABLE test_tab
2> ADD CONSTRAINT pk_test_tab PRIMARY KEY(id);
3> go
消息 8111,级别 16,状态 1,服务器 HOME-BED592453C\SQLEXPRESS,第 1 行
无法在表 'test_tab' 中可为空的列上定义 PRIMARY KEY 约束。
消息 1750,级别 16,状态 1,服务器 HOME-BED592453C\SQLEXPRESS,第 1 行
无法创建约束。请参阅前面的错误消息。

首先对 id 这个列,增加一个 NOT NULL 约束,然后再设置为主键。

1> ALTER TABLE test_tab
2> ALTER COLUMN id INT NOT NULL;
3> go

1> ALTER TABLE test_tab
2> ADD CONSTRAINT pk_test_tab PRIMARY KEY(id);
3> go

Ⅶ 用SQL脚本修改表的的主键问题

不知道你什么数据库.
假如是
SQL
Server
的话,
主键必须先非空
1>
CREATE
TABLE
test_tab
(
2>
id
INT,
3>
name
VARCHAR(10),
4>
age
INT,
5>
val
VARCHAR(10)
6>
);
7>
go
1>
ALTER
TABLE
test_tab
2>
ADD
CONSTRAINT
pk_test_tab
PRIMARY
KEY(id);
3>
go
消息
8111,级别
16,状态
1,服务器
HOME-BED592453C\SQLEXPRESS,第
1

无法在表
'test_tab'
中可为空的列上定义
PRIMARY
KEY
约束。
消息
1750,级别
16,状态
1,服务器
HOME-BED592453C\SQLEXPRESS,第
1

无法创建约束。请参阅前面的错误消息。
首先对
id
这个列,增加一个
NOT
NULL
约束,然后再设置为主键。
1>
ALTER
TABLE
test_tab
2>
ALTER
COLUMN
id
INT
NOT
NULL;
3>
go
1>
ALTER
TABLE
test_tab
2>
ADD
CONSTRAINT
pk_test_tab
PRIMARY
KEY(id);
3>
go

Ⅷ Plsql中怎么修改课程表主键名字

界面右侧有新建和删除,直接选中现有的那一行,删掉,然后新建一个,然后改上新的,应用即可
。Plsql是Oracle公司在SQL基础上进行扩展而成的一种过程语言。PLSQL提供了典型的高级语言特性,包括封装,例外处理机制,信息隐藏,面向对象等;并把最新的编程思想带到了数据库服务器和工具集中。与Java,C#相比,PLSQL的优势是:SQL语言可以直接写到PLSQL的“块”中或者是PLSQL的过程、函数中。
没有必要向java那样先创建Statement对象来执行SQL;这使得PLSQL成为很强大的事务处理语言,即:使用SQL来处理数据,使用控制结构来处理业务逻辑。PL/SQL(ProceralLanguage/SQL)是一种过程化语言,属于第三代语言,它与C、C++、Java等语言一样关注于处理细节,可以用来实现比较复杂的业务逻辑。它允许SQL的数据操纵语言和查询语句包含在块结构(block_structured)和代码过程语言中,使PL/SQL成为一个功能强大的事务处理语言。在甲骨文数据库管理方面,PL/SQL是对结构化查询语言(SQL)的过程语言扩展。PL/SQL的目的是联合数据库语言和过程语言。PL/SQL的基本单位叫做块,由三个部分组成:一个声明部分,一个执行部分和异常处理部分。因为PL/SQL允许混合SQL声明和过程结构,因此可以在将声明发送到甲骨文系统去执行之前使用PL/SQL区段和副程序来组合SQL声明,没有PL/SQL,甲骨文需要就每次处理SQL声明,在网络环境中,这将影响交通流量,而且增加响应时间。PL/SQL区段只被编译一次并且以可运行的形式储存,以降低响应时间。

Ⅸ SQL语句如何修改主键字段的字段类型类型

首先,修改主键字段的字段类型,肯定是要先删除主键才能操作的
--【1.查找主键】
--SQLSERVER
select name as pkName from dbo.sysobjects where xtype='PK' and parent_obj=(select id from dbo.sysobjects where name='表名')
--ORACLE
SELECT CONSTRAINT_NAME FROM USER_CONSTRAINTS WHERE TABLE_NAME = UPPER('表名') AND CONSTRAINT_TYPE ='P'
--【2.删除主键约束】
ALTER TABLE 表名 DROP CONSTRAINT 约束名
--ORACLE
--删除主键连同索引
ALTER TABLE 表名 DROP CONSTRAINT 约束名 CASCADE DROP INDEX;
或者
ALTER TABLE 表名 DROP PRIMARY KEY CASCADE DROP INDEX;--【3.修改字段】
--【先把这一列的值备份到临时列里,再把这一列update成null,再修改类型,再把数据拷贝回来】
--SQLSERVER
--默认值单独处理,关联约束
--默认值的变更涉及到约束,如有约束,需要先查询出越是再进行删除
ALTER TABLE 表名 DROP CONSTRAINT 约束名
ALTER TABLE 表名 ALTER COLUMN 字段名 字段类型(长度精度) 是否为空
ALTER TABLE 表名 ADD CONSTRAINT 约束名 DEFAULT 默认值 FOR 字段名
--ORACLE
--删除默认值:default null
ALTER TABLE 表名 MODIFY COLUMN 字段名 VARCHAR2(20) DEFAULT ' ' NOT NULL--【4.新增主键】
--指定主键名字
ALTER TABLE 表名 ADD CONSTRAINT 主键名 PRIMARY KEY (F1,F2);
--未指定主键名字
ALTER TABLE 表名 ADD PRIMARY KEY (F1,F2)

Ⅹ 如何通过PL/SQL修改某一个表的结构(主键

方法/步骤
登录PL/SQL
Developer
找到要修改数据的表,右击该表,选择“编辑数据”
出现下图这样的窗口,注意方框中的信息。
小锁此时打开了,说明可以编辑数据了,后面的加减号表示增加、删除记录。
最后一列的rowid不能修改,这是物理标识列。
修改了数据后,可以看到对号变成绿色了,此时要提交的话需要点击这个对号。
点击对号之后并没有真正保存,还需要提交事务,这样才算是真正修改了。
点击对号之后,还要点击提交事务按钮。
弹出确认提示框,点击是即可。
我们还可以在sql窗口中输入‘select
t.*,t.rowid
from表
t’,按执行键,然后再点击那个锁,即可开始修改表数据。
如果输入的是‘select
t.*
from

t’,这条语句和上面的那个语句查询结果是相同的,但因为多查了个rowid,所以才能修改数据。