
alter
database
dataname
add
datafile
--
这个语句是增加数据文件,一般用在数据文件不可扩展的数据库中,比如使用了裸设备,而裸设备的空间已经满了,则需要增加一些存储在其他裸设备中的数据文件
alter
database
dataname
modify
datafile
--
这个语句是用来修改数据文件的属性,可以修改大小,可扩展性,数据文件类型等等。比如该数据文件太大,用不了这么多,可以缩小一点(一般用在undo表空间),或者太小,而存储设备还有空间,可以扩展一些。
先删除约束,再删除列
alter table student
drop constaint XXXX
alter table student
drop column 姓名
单击开始---->所有程序---->MicrosoftSQLServer2014,选择SQLServer2014ManagementStudio选项,打开软件。
2连接到服务器窗口中,输入服务器名称,选择SQLServer身份验证,输入登录名和密码,连接进入数据库。
3在左侧对象资源管理器中,展开数据库选项,找到NewData数据库。
4在NewData数据库上右击,选择删除 *** 作。
5删除对象窗口中,选择删除数据库备份和还原历史记录信息选项,同时选择关闭现有连接选项,单击确定。
6可以看到,SQLServer中的NewData数据库已删除。
7打开SQLServer安装目录中的DATA文件夹,NewData数据库已没有了,说明NewData数据库成功删除。
扩展资料:
SQL是StructuredQueryLanguage(结构化查询语言)的缩写。SQL是专为数据库而建立的 *** 作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库 *** 作的基础,并且现在几乎所有的数据库均支持SQL。
SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(basetable);存储模式(内模式)称为“存储文件”(storedfile);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。名称对称如^00100009a^:
SQL包括了所有对数据库的 *** 作,主要是由4个部分组成:
数据定义:这一部分又称为“SQLDDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。
数据 *** 纵:这一部分又称为“SQLDML”,其中包括数据查询和数据更新两大类 *** 作,其中数据更新又包括插入、删除和更新三种 *** 作。
数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。
嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。
参考资料:
1、插入
--11插入单行
insert [into] <表名> (列名) values (列值)
--例:
insert into Strdents (姓名,性别,出生日期) values ('开心朋朋','男','1980/6/15')2、修改
update <表名> set <列名=更新值> [where <更新条件>]
--例:
update tongxunlu set 年龄=18 where 姓名='蓝色小名'3、删除
--31删除<满足条件的>行
delete from <表名> [where <删除条件>]
--例:
delete from a where name='开心朋朋'(删除表a中列值为开心朋朋的行)
32删除整个表
truncate table <表名>
truncate table tongxunlu
--注意:删除表的所有行,但表的结构、列、约束、索引等不会被删除;不能用语有外建约束引用的表
1 删除表的注意事项
在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE *** 作后,该TABLESPACE上百兆的空间就被耗光了。
2having 子句的用法
having 子句对 group by 子句所确定的行组进行控制,having 子句条件中只允许涉及常量,聚组函数或group by 子句中的列
3外部联接"+"的用法
外部联接"+"按其在"="的左边或右边分左联接和右联接若不带"+"运算符的表中的一个行不直接匹配于带"+"预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回若二者均不带’+’,则二者中无法匹配的均被返回利用外部联接"+",可以替代效率十分低下的 not in 运算,大大提高运行速度例如,下面这条命令执行起来很慢
用外联接提高表连接的查询速度
在作表连接(常用于视图)时,常使用以下方法来查询数据:
SELECT PAY_NO, PROJECT_NAME
FROM A
WHERE APAY_NO NOT IN (SELECT PAY_
NO FROM B WHERE VALUE >;=120000);
---- 但是若表A有10000条记录,表B有10000条记录,则要用掉30分钟才能查完,主要因为NOT IN要进行一条一条的比较,共需要1000010000次比较后,才能得到结果。该用外联接后,可以缩短到1分左右的时间:
SELECT PAY_NO,PROJECT_NAME
FROM A,B
WHERE APAY_NO=BPAY_NO(+)
AND BPAY_NO IS NULL
AND BVALUE >;=12000;
4set transaction 命令的用法
在执行大事务时,有时oracle会报出如下的错误:
ORA-01555:snapshot too old (rollback segment too small)
这说明oracle给此事务随机分配的回滚段太小了,这时可以为它指定一个足够大的回滚段,以确保这个事务的成功执行例如
set transaction use rollback segment roll_abc;
delete from table_name where
commit;
回滚段roll_abc被指定给这个delete事务,commit命令则在事务结束之后取消了回滚段的指定
5数据库重建应注意的问题
在利用import进行数据库重建过程中,有些视图可能会带来问题,因为结构输入的顺序可能造成视图的输入先于它低层次表的输入,这样建立视图就会失败要解决这一问题,可采取分两步走的方法:首先输入结构,然后输入数据命令举例如下 (uesrname:jfcl,password:hfjf,host stingra1,数据文件:expdatadmp):
imp jfcl/hfjf@ora1 file=empdatadmp rows=N
imp jfcl/hfjf@ora1 file=empdatadmp full=Y buffer=64000
commit=Y ignore=Y
第一条命令输入所有数据库结构,但无记录第二次输入结构和数据,64000字节提交一次ignore=Y选项保证第二次输入既使对象存在的情况下也能成功
select aempno from emp a where aempno not in
(select empno from emp1 where job=’SALE’);
倘若利用外部联接,改写命令如下:
select aempno from emp a ,emp1 b
where aempno=bempno(+)
and bempno is null
and bjob=’SALE’;
可以发现,运行速度明显提高
6从已知表新建另一个表:
CREATE TABLE b
AS SELECT (可以是表a中的几列)
FROM a
WHERE acolumn = ;
7查找、删除重复记录:
法一: 用Group by语句 此查找很快的
select count(num), max(name) from student --查找表中num列重复的,列出重复的记录数,并列出他的name属性
group by num
having count(num) >;1 --按num分组后找出表中num列重复,即出现次数大于一次
以上就是关于在SQL中,建立、修改和删除数据库中基本表结构的命令分别为________、________和________命令。全部的内容,包括:在SQL中,建立、修改和删除数据库中基本表结构的命令分别为________、________和________命令。、数据库删除基本表中的一列,比如我有个student表,有一列姓名不想要了,如何写语句之前姓名列有个约束、如何清除SQL数据库中的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)