sql修改列类型
1. 如何使用sql语句修改表的结构,比如添加字段,修改字段的类型
1.修改数据表名
ALTER TABLE OLD_TABLE_NAME RENAME TO NEW_TABLE_NAME;
2.修改列名
ALTER TABLE TABLE_NAME RENAME COLUMN OLD_COLUMN_NAME TO NEW_COLUMN_NAME;
3.修改列的数据类型
ALTER TABLE TABLE_NAME MODIFY COLUMN_NAME NEW_DATATYPE;
4.插入列
ALTER TABLE TABLE_NAME ADD COLUMN_NAME DATATYPE;
5.删除列
ALTER TABLE TABLE_NAME DROP COLUMN COLUMN_NAME;
2. sql语句如何更新某列数值为整数型
(1)什么数据库?现在的页面看不出来是什么数据库。
(2)现在该字段的数据类型是什么?
我的猜测:我看这些0很整齐,小数点后面0的位数是一样的,也就是说明这个0是自动补的,我也查了前面你的那个类似字段,也是小数点后14位(算上小数点后不是0的数字),那么也就是说个人觉得你的数据类型应该mysql的decimal类型,因为个人所知的数据库中只有这个(据说DB2上也有这个,不过我没用过不知道)。
也就是说你的数据类型是decimal(xx,14),那么就会出现这个情况,你可以用alter修改该字段的字段类型,update只能修改字段的值,是没办法修改字段的字段类型的。而且因为decimal(xx,14)这个字段属性的关系,不管你怎么update,最终都是这种情况。
3. sql 修改字段类型
alter table 表名 alter column 字段名 type not null。
1、修改字段名:
alter table 表名 rename column A to B。
2、修改字段默认值:
alter table 表名 add default (0) for 字段名 with values,如果字段有默认值,则需要先删除字段的约束,在添加新的默认值。
3、增加字段:
alter table 表名 add 字段名 type not null default 0 。
5、删除字段:
alter table 表名drop column 字段名。
(3)sql修改列类型扩展阅读:
alter其他用法
1.重命名表
ALTER TABLE 【表名字】 RENAME 【表新名字】
2.删除表中主键
Alter TABLE 【表名字】 drop primary key
3.添加主键
ALTER TABLE sj_resource_charges ADD CONSTRAINT PK_SJ_RESOURCE_CHARGES PRIMARY KEY (resid,resfromid)
4.添加索引
ALTER TABLEsj_resource_charges add index INDEX_NAME (name);
5.添加唯一限制条件索引
ALTER TABLE sj_resource_charges add unique emp_name2(cardnumber);
6.删除索引
alter table tablename drop index emp_name;
7.联合唯一索引
ALTER TABLE tablenameADD UNIQUE INDEX INDEX_NAME(school_id, settlement_time);
alterignoretable tablenameadniqueindex(user_id,user_name)
4. SQL 修改表中的列名(急~~~)
1、在oracle数据库中: ALTER TABLE 表名 RENAME COLUMN 列名 TO 新列名。
2、在sqlserver数据库中:exec sp_rename '[表名].[列名]‘,’[表名].[新列名]'。
3、在mysql数据库中:ALTER TABLE 表名 CHANGE 列名 新列名 列类型。
(4)sql修改列类型扩展阅读:
SQL中对表的其它操作:
1、插入列:
ALTER TABLE [表名.]TABLE_NAME ADD COLUMN_NAME DATATYPE。
2、为表中某列添加约束:大于等于100
alter table 表名 add check(列名>=100)。
3、更改表某列的数据类型为nchar(30):
alter table 表名 altercolumn列名 nchar(30)。
4、删除表中某列的相关约束:
alter table 表名 dropconstraint约束名。
5、删除表中的某列:
alter table 表名 dropcolumn列名。
参考资料:网络-SQL语句大全
5. SQL如何用语句更改字段的数据类型
SQL如何用语句更改字段可以用以下语句可以实现:
altertable表名altercolumn字段名变更后的字段类型。
注意:
但若是关键字段,带有主键,并且字段类型为用户自定义类型,具有默认值的情况下,用上述语句会出现错误。
例如:
现假设表为TABLE1,关键字段为FIELD1,主键为PK_FIELD1,关键字段的数据类型为用户自定义数据类型cha_field1,实际为CHAR(10),默认值为dbo.D_field1现要求将字段类型改为varchar(20),默认值去除错误提示如下:
服务器:消息5074,级别16,状态1,行1
对象'D_field1'依赖于列'field1'。
服务器:消息5074,级别16,状态1,行1
对象'PK_field1'依赖于列'field1'。
服务器:消息4922,级别16,状态1,行1
ALTERTABLEALTERCOLUMNfield1失败,因为有一个或多个对象访问此列。
6. plsql字段类型修改
1、首先打开plsql,连接上oracle数据库,假设有一张数据库表叫做 tblTest,通过sql查询也可以看出,这里面是有测试数据的。
7. sql执行修改列数据类型时出错,该怎么解决
楼上的2位回答明显不靠谱,你插入的最后一个值,对应的列是否数值型的。在插入数值型的列的时候,如果没有值,要么插入0,要么插入null值,插入''就会出现从数据类型 varchar 转换为 numeric 时出错。你其他的列都应该没问题,如果数值的长度够长的话。
8. 怎么修改SQL列的数据类型
先删除外键关联:
alter table anqi drop constraint PK__anqi__1920BF5C
然后再执行你的SQL
alter table anqi alter column nihaoa char
跟查询根本就没关系!
9. access sql 查询改变列类型
可以用下面3个函数进行数字转字符:
format(123,'####')
str(123)
cstr(123)
比如:
selectcstr(col_a)col_afromtable
10. 如何用sql更改表的列的数据类型和添加新列和约束
如何用sql更改表的列的数据类型和添加新列和约束
--修改插入标题
--A.添加新列
ALTER
TABLE
表名
ADD
列名
VARCHAR(20)
--B.修改列名
EXEC
sp_rename
'dbo.表名.列名',
'新列名',
'COLUMN'
--知识点衍生
--1.删除列
ALTER
TABLE
表名
DROP
COLUMN
column_b
--2.更改列的数据类型
ALTER
TABLE
表名
ALTER
COLUMN
列
DECIMAL
(5,
2)
--3.添加包含约束的列(唯一约束)
ALTER
TABLE
表
ADD
列
VARCHAR(20)
NULL
CONSTRAINT
约束名
UNIQUE
--4.添加一个未验证的check约束
ALTER
TABLE
表
WITH
NOCHECK
ADD
CONSTRAINT
约束名
CHECK
(列
>
1)
--5.在现有列中添加一个DEFAULT约束
ALTER
TABLE
表
ADD
CONSTRAINT
约束名
DEFAULT
50
FOR
列名
--6.删除约束
ALTER
TABLE
表
DROP
CONSTRAINT
约束名
--7.更改排序规则
ALTER
TABLE
表
ALTER
COLUMN
列
varchar(50)
COLLATE
Latin1_General_BIN
--8.修改表名
EXEC
sp_rename
'dbo.表名',
'新表名'
--9.重命名索引
EXEC
sp_rename
N'dbo.表名.索引名',
N'新索引名',
N'INDEX'