企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
alter 1、Alter database语句用来修改数据库的属性 ~~~ ALTER {DATABASE | SCHEMA} [db_name] alter_specification ... ALTER {DATABASE | SCHEMA} db_name UPGRADE DATA DIRECTORY NAME alter_specification: [DEFAULT] CHARACTER SET [=] charset_name | [DEFAULT] COLLATE [=] collation_name ~~~ Db_name可以不指定,如果不指定说明是修改当前数据库的属性 Character set代表修改数据库的默认字符集 Collate代表修改数据库的默认排序规则 *********如果修改了数据库的默认字符集或排序规则,那数据库中的所有存储过程和函数都需要重新创建一遍** 2、Alter view语句用来修改视图的定义,本身的语法结构和create view相同,语句所起到的作用和create or replace view语句相同 ~~~ Alter view [ALGORITHM = {UNDEFINED | MERGE | TEMPTABLE}] [DEFINER = { user | CURRENT_USER }] [SQL SECURITY { DEFINER | INVOKER }] VIEW view_name [(column_list)] AS select_statement [WITH [CASCADED | LOCAL] CHECK OPTION] ~~~ 示例: ~~~ mysql> alter view v_students_male as select sid,sname from students where sex=0; mysql> select * from v_students_male; +------+-------+ | sid | sname | +------+-------+ | 1 | aaa | ~~~ 3、Alter table ~~~ Alter table … add constraint [name] unique [index/key] [name] ### Alter table … add constraint [name] foreign key (column_name) references table_name(column_name) Alter table … drop [index/key] [index_name] ALTER TABLE table_name ADD column_name datatype;在表中添加列 ALTER TABLE table_name DROP COLUMN column_name;删除表中的列 alter table teacher modify name varchar(64) null ; 改变表中列的数据类型 ALTER TABLE table_name RENAME TO new_table_name; 重命名表 ~~~ 修改字段排列位置 ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2 参数说明 FIRST,可选参数 将字段1,修改为表的第一个字段。 AFTER 字段名2 将字段1,插入到字段2的后面。 向表中添加主键约束 alter table student add constraint pk_student primary key(studentid); 创建表的同时创建主键约束 (1)无命名 create table student ( studentid int primary key not null, studentname varchar(8), age int); (2)有命名 create table students ( studentid int , studentname varchar(8), age int, constraint yy primary key(studentid)); 删除表中已有的主键约束 (1)无命名 可用 SELECT * from user_cons_columns; 查找表中主键名称得student表中的主键名为SYS_C002715 alter table student drop constraint SYS_C002715; (2)有命名 alter table students drop constraint yy;