怎么在数据表中新增各类型数据的字段?

colee 2003-01-13 12:00:38
ALTER TABLE Stone ADD classid unique
我想加一个自动编号字段classid,在Access和SQL Server数据库里,上面的“unique”各应该改成什么?
能不能把其他所有数据类型(对应两种数据库的)的表达也列出来?
谢了
...全文
68 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
colee 2003-01-17
  • 打赏
  • 举报
回复
To 楼上的
那程式确实不错喔,等有时间再去仔细研究研究
结贴先
sunrise_chen 2003-01-16
  • 打赏
  • 举报
回复
建议看一下我写的COCOON DB Tools Final
http://asp.6to23.com/cocoon/cocoon/code/DbTools.asp

你想要的在里面都能找到。
colee 2003-01-15
  • 打赏
  • 举报
回复
楼上的,你还是没有告诉我: 怎么样才能使一个字段成为主键?
另外,怎么改变一个字段的字段名?
高手们啊,请不甚赐教。
colee 2003-01-13
  • 打赏
  • 举报
回复
对了,怎么在增加的同时要把它们定为索引和主键?
xfyz 2003-01-13
  • 打赏
  • 举报
回复
Sql = "CREATE TABLE stone (class_ID int IDENTITY (1, 1) NOT NULL)"
fbj007 2003-01-13
  • 打赏
  • 举报
回复
ALTER TABLE Stone ADD classid int IDENTITY
scfobao 2003-01-13
  • 打赏
  • 举报
回复
ALTER TABLE
Name
ALTER TABLE -- 修改表的定义
Synopsis
ALTER TABLE [ ONLY ] table [ * ]
ADD [ COLUMN ] column type [ column_constraint [ ... ] ]

ALTER TABLE [ ONLY ] table [ * ]
ALTER [ COLUMN ] column { SET DEFAULT value | DROP DEFAULT }
ALTER TABLE [ ONLY ] table [ * ]
ALTER [ COLUMN ] column SET STATISTICS integer
ALTER TABLE [ ONLY ] table [ * ]
RENAME [ COLUMN ] column TO newcolumn
ALTER TABLE table
RENAME TO newtable
ALTER TABLE table
ADD table constraint definition
ALTER TABLE [ ONLY ] table
DROP CONSTRAINT constraint
{ RESTRICT | CASCADE }
ALTER TABLE table
OWNER TO new owner

输入



table
试图更改的现存表的名称.

column
现存或新的列名称.

type
新列的类型.

newcolumn
现存列的新名称.

newtable
表的新名称.

table constraint definition
表的新的约束定义.

New user
该表的新所有者的用户名.


输出



ALTER
从被改名的列或表返回的信息.

ERROR
如果一个列或表不存在返回的信息.


描述
ALTER TABLE 变更一个现存表的定义. ADD COLUMN 形式使用与 CREATE TABLE 一样的语法向表中增加一个新列/字段。 ALTER COLUMN SET/DROP DEFAULT 形式允许你从列/字段中设置或者删除缺省(值)。 注意缺省(值)只适用于随后的 INSERT 命令。 它们不会改变已经存在于表中的行. ALTER COLUMN SET STATISTICS 形式允许你为 随后的 ANALYZE 操作 设置收集统计信息的对象. RENAME 子句可以在不影响任何相关数据的情况下更改 一个表,字段,索引或者序列名称。因此, 在此命令执行后数据仍将是相同尺寸和类型。 ADD table constraint definition 子句使用与 CREATE TABLE 一样的语法向表中增加一个新的约束。 DROP CONSTRAINT constraint 子句删除所有表上匹配 constraint 的 CHECK 约束(以及其子表) OWNER 把该表的所有者改为用户 new user.

如果要改变表的纲要,你必须是表的所有者.

注意
COLUMN 关键字是多余的,可以省略.

在目前的 ADD COLUMN实现里还不支持 新列/字段的缺省(值)和 NOT NULL 子句。不过你可以随后用 ALTER TABLE 的 SET DEFAULT 形式设置缺省(值)。(你可能还想用 UPDATE 把已存在行更新为缺省值。)

目前只有 CHECK 约束可以从表中删除.RESTRICT 关键字是必须的,尽管 并不检查依赖性.还不支持 CASCADE 选项.要删除一个 PRIMARY 或者 UNIQUE 约束,用 DROP INDEX 命令删除相关的索引. 要删除 FOREIGN KEY 约束,你需要重新创建并重新装载该表, 创建的时候使用 CREATE TABLE 命令的其它参数.

比如,要删除在表 distributors 上的所有约束∶

CREATE TABLE temp AS SELECT * FROM distributors;
DROP TABLE distributors;
CREATE TABLE distributors AS SELECT * FROM temp;
DROP TABLE temp;


要修改表的结构,你必须是表的所有人。不允许更改系统表结构的任何部分。 PostgreSQL 用户手册里有关于继承的更多信息.

请参考CREATE TABLE 部分获取更多有效参数的描述.

用法
向表中增加一个 varchar 列:

ALTER TABLE distributors ADD COLUMN address VARCHAR(30);


对现存列改名:

ALTER TABLE distributors RENAME COLUMN address TO city;


更改现存表的名字∶

ALTER TABLE distributors RENAME TO suppliers;


给一个表增加一个检查约束∶

ALTER TABLE distributors ADD CONSTRAINT zipchk CHECK (char_length(zipcode) = 5);

删除一个表和它的所有子表的监查约束∶

ALTER TABLE distributors DROP CONSTRAINT zipchk;


向表中增加一个外键约束:

ALTER TABLE distributors ADD CONSTRAINT distfk FOREIGN KEY (address) REFERENCES addresses(address) MATCH FULL;


给表增加一个(多字段)唯一约束∶

ALTER TABLE distributors ADD CONSTRAINT dist_id_zipcode_key UNIQUE (dist_id, zipcode);


兼容性
SQL92
ADD COLUMN 形式是兼容的, 除了上面说的缺省(值)和 NOT NULL 约束外。 ALTER COLUMN 形式是完全兼容的。

SQL92 对 ALTER TABLE 声明了一些附加的 PostgreSQL 目前还不直接支持的功能:



ALTER TABLE table DROP [ COLUMN ] column { RESTRICT | CASCADE }

从一个表中删除一个列. 目前,要删除一个现存的列,表必须重新创建和重新装载:

CREATE TABLE temp AS SELECT did, city FROM distributors;
DROP TABLE distributors;
CREATE TABLE distributors (
did DECIMAL(3) DEFAULT 1,
name VARCHAR(40) NOT NULL
);
INSERT INTO distributors SELECT * FROM temp;
DROP TABLE temp;

colee 2003-01-13
  • 打赏
  • 举报
回复
CREATE INDEX model_type ON Stone(model_type) on PRIMARY
这条语句不能创建主索引(主键)啊,
怎么写才能创建主键?
yiyilc 2003-01-13
  • 打赏
  • 举报
回复
主键和索引是增加完字段后,在创建的
字段
ALTER TABLE [dbo].[kdinforT] ADD COLUMN [kd_code] [varchar(50)]
索引,主键
CREATE INDEX [index_kd_code] ON [dbo].[kdinforT]([kd_code]) ON [PRIMARY]

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧