① sql语句中ALTER TABLE MODIFY和ALTER TABLE CHANGE的区别
modify能修改字段类型和约束,而change不能。
change用来字段重命名,不能修改字段类型和约束;
modify不用来字段重命名,只能修改字段类型和约束;
试验比较:
1、字段重命名:
1)change
mysql> alter table t1 change number id char(2);
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0
2)modify
mysql> alter table t1 modify id num int(2);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'num int(2)' at line 1
mysql>
结论:能用change重命名,而modify不能。
2、修改字段类型和约束
1)modify
mysql> alter table t1 modify id int(2);
Query OK, 0 rows affected (0.06 sec)
Records: 0 Duplicates: 0 Warnings: 0
mysql> alter table t1 modify id int(2) not null;
Query OK, 0 rows affected (0.08 sec)
Records: 0 Duplicates: 0 Warnings: 0
2)change
mysql> alter table t1 change id char(2);
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'char(2)' at line 1
mysql> alter table t1 change id char(2) not null;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'char(2) not null' at line 1
结论:modify能修改字段类型和约束,而change不能。
最终结论:change用来字段重命名,不能修改字段类型和约束;
modify不用来字段重命名,只能修改字段类型和约束;
② SQL server 用SQL语句修改辅助数据文件大小
使用modify datafile语句。
modify datafile。这个语句是用来修改数据文件的属性,可以修改大小,可扩展性,数据文件类型等等。比如该数据文件太大,用不了这么多,可以缩小一点(一般用在undo表空间),或者太小,而存储设备还有空间,可以扩展一些。
sql server数据库文件有几种 有以下三种:主数据文件辅助数据文件事务日志文件分别简介:1.主数据文件用来存储数据库的数据和数据库的启动信息。每个数据库必须有且只有一个主数据文件,其扩展名为.mdf。实际的主数据文件都有两种名称:操作系统文件名和逻辑文件名(在sql语句中会用到)。2.辅助数据文件用来存储数据库的数据,可以扩展存储空间。一个数据库可以有多个辅助数据文件。扩展名为.ndf。3.事务日志文件用来存放数据库的事务日志。凡是对数据库进行的增、删、改等操作,都会记录在事务日志文件中。每个数据库至少有一个事务日志文件。
③ sql modify修改字段类型时提示语法错误
在SQL Server的修改表结构语法中,没有关键字MODIFY,而是用的alter column;
所以,你的语句应该改为:
ALTER TABLE student ALTER COLUMN age smallint;
④ sql语句如何修改字段长度
代码示例:
alter table T1 alter column F1 varchar(10)
一般地,改字段名可以用这条语句:
复制代码代码示例:
alter table A rename column a to c
实际应用中,往往是用J-SQL进行编译,而J-SQL不支持修改字段名。
因此,如果一定要修改字段名,那么只有通过变通的方法了。思路:
1.新建一个字段,取名为c;
2.将字段a的内容拷贝到c;
3.删除字段a;sql修改字段长度的语法:
alter table 表名 modify 字段名 字段类型;sql修改字段长度:
复制代码代码示例:
alter table qtline modify qtl_bidernote VARCHAR2(4000);
标准SQL,对任何数据库都适用
复制代码代码示例:
alter table fzrtmis.reporttemplate modify REPNAME varchar(100);
修改字段名名称:
复制代码代码示例:
ALTER TABLE TABLENAME RENAME COLUMN COL1 TO COL2;
添加字段:
复制代码代码示例:
alter table fzrtmis.itiembuildqk add STATIONSTATE CHAR(1)
⑤ SQL MODIFY与MODIFY()区别
一、功能不同
1、SQL MODIFY:midify语句可以修改属性的类型。
2、MODIFY():使用字符串中定义的操作修改数据窗口控件。
二、语法不同
1、SQL MODIFY:语法:altertablestudentmodifyageint;比如把student表中的sge的类型由字符型改为整型。
2、MODIFY():返回值:string 。成功时返回空字符串(“”),发生错误时返回一条出错消息。
三、作用不同
1、SQL MODIFY:更改表子字段的长度,更改表字段的名字,删除表字段。
2、MODIFY():修改数据窗口中各种对象的颜色、标题、文本等。.修改数据窗口中不同表的更新状态,以便让应用程序一次可以更新多个表。
⑥ sql怎么修改表字段的大小
alter table <表名> alter column <字段名> 新类型名(长度)
示例:假如有名T1,字段名F1,原来F1为varchar(3),现在要改为varchar(10),则可以这么写:
alter table T1 alter column F1 varchar(10)
一般地,改字段名可以用这条语句:
alter table A rename column a to c
但是,实际应用中,我们往往是用J-SQL进行编译,而J-SQL不支持修改字段名,所以,如果一定要修改字段名,那么只有通过变通的方法了,具体思路为:
1.新建一个字段,取名为c;
2.将字段a的内容拷贝到c;
3.删除字段a;
sql修改字段长度的语法:
alter table 表名 modify 字段名 字段类型;
sql修改字段长度的示例代码
alter table qtline modify qtl_bidernote VARCHAR2(4000);
标准SQL,对任何数据库都适用
alter table fzrtmis.reporttemplate modify REPNAME varchar(100);
修改字段名名称
ALTER TABLE TABLENAME RENAME COLUMN COL1 TO COL2;
添加字段
alter table fzrtmis.itiembuildqk add STATIONSTATE CHAR(1)
⑦ 用sql语句和用modify structure命令修改表结构有什么不同
用sql语句修改表结构有两种方法:调用系统存储过程(不同环境用法不同)、直接修改系统表。
直接修改系统表的办法不推荐使用,这是最不安全的方法,容易造成不可恢复的错误。另外一个问题是,这种方法需要很高的SQL权限,标准权限的用户无法使用。
modify structure命令,是标准的修改表结构方式。
⑧ sql中的modify语句 修改列名
(1) 更改表子字段的长度:alter table table_name modify(col_name varchar2(6));
(2) 更改表字段的名字:alter table table_name rename column col_name1 to col_name2 ;
(3) 删除表字段: alter table table_name drop column col_name;
(4) 添加表字段: alter table table_name add col_name varchar2(20) null ;
⑨ mysql数据库中sql修改字段类型要怎么做
方法如下:
//修改一个字段的类型
alter table user MODIFY new1 VARCHAR(10);
//修改一个字段的名称,此时一定要重新指定该字段的类型
alter table user CHANGE new1 new4 int。
⑩ sql server: modify
如果Sno字段原来不为空:
ALTER TABLE student
alter column Sno varchar(10) not NULL
如果Sno字段原来为空:
ALTER TABLE student
alter column Sno varchar(10)
因为不管以前的字段是否允许为空,执行
ALTER TABLE student
alter column Sno varchar(10)后该字段都会变为允许为空。
还有就是执行这类修改操作时最好是空表,如果有数据,可能会失败。因为有些数据类型之间可能不能隐式的转换或者根本就不能转化,比如“abc”要转换成int型。所以,一切还要自己注意控制。