‘壹’ ORACLE如何修改表所在的表空间
可以通过alter方法,将一个表移动到另外一个表空间中:
sql: alter table spaceOne.tablename move tablespace spaceTwo;
解释:以上语句就是把tablename表从spaceOne移动到spaceTwo中。
备注一:
当前的用户必须对spaceTwo、spaceOne都有操作权限才可以。
备注二:
其实如果对两个表空间都有权限的话,可以通过
create spaceTwo.tablename as select * from spaceOne.tablename;
之后再删除spaceOne中tablename表的间接方式也能实现。
‘贰’ SQL数据库修改表
1、首先你要保证你的两个表都有主键,或者有关联字段。
例如:
表A(id,name,date) id是主键
表B(id,name,date) id是主键
1)导入B数据数据到A表保留date字段值(确切的说这种情况应该叫利用【B】表数据更新【A】表数据),用下面的sql就可以达到目的:
update A set A.date=(select B.date from B where B.id=A.id);
说明:这样做的话要保证A表和B表都有数据并且id字段能够关联上,而且这样修改的数据只是关联上的数据,假设A表中有【id=1】的数据而B表中没有
【id=1】的数据,那么A表中【id=1】的数据就不会被修改。
2)如果A表和B表都没有主键的话,那么寻找一个能够关联两个表数据的字段(这个字段可以从一定意义上作为"主键"区分表中数据),假设是id和name字段联合起来:
update A set A.date=(select B.date from B where B.id=A.id and B.name=A.name);
说明:在这个更新中更新条目也只限定于能够关联上的数据。
3)如果A表中没有数据只是想把B表中的数据全部插入A表(B表中date字段的值必须被保留的话)
insert into A select * from B;
说明:在这个语句中,把B表中所有的数据不加修改的全部放入了B表,自然也就包含了date字段的值不变。
insert intp A select 1,'张三',date from B;
说明:在这个语句中,把B表中的date字段的只保留,id和name字段分别换成了【1】和【张三】(当然是所有数据的id和name字段都换了)
2、综合上面的观点
1)如果表1没有数据:insert into 表1 select * from 表2;
2)如果表1中有数据,并且和表2中的数据完全关联的上的话:
update 表1 set 表1.sj=(select 表2.sj from 表2 where 表2.字段X=表1.字段X and....);
3)如果表1中有数据,但是表2中只有一部分能够关联上,目的是关联上的更新,关联不上的插入表1的话:
先:update 表1 set 表1.sj=(select 表2.sj from 表2 where 表2.字段X=表1.字段X and....);
后:insert 表1 select * from 表2 where 表2.关联字段X not in(select 表1.关联字段X from 表1) and
表2.关联字段Y not in(select 表1.关联字段Y from 表1)....
---
以上,希望对你有所帮助。
‘叁’ sql语言改数据库空间大小
ALTER DATABASE database
{ ADD FILE < filespec > [ ,...n ] [ TO FILEGROUP filegroup_name ]
| ADD LOG FILE < filespec > [ ,...n ]
| REMOVE FILE logical_file_name
| ADD FILEGROUP filegroup_name
| REMOVE FILEGROUP filegroup_name
| MODIFY FILE < filespec >
| MODIFY NAME = new_dbname
| MODIFY FILEGROUP filegroup_name {filegroup_property | NAME = new_filegroup_name }
| SET < optionspec > [ ,...n ] [ WITH < termination > ]
| COLLATE < collation_name >
}
‘肆’ SQL怎么改变数据库的大小用代码
SQL改变数据库的大小可以参考下面的代码:
ALTER DATABASE add_group
MODIFY FILE
(NAME = add_data,
SIZE = 10MB);
DBCC SHRINKFILE (add_data, 7);
(4)sql修改表的所属空间扩展阅读:
SQL语句
更新:update table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ (所有包含‘value1’这个模式的字符串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
更新数据记录:
sql="update 数据表 set字段名=字段值 where 条件表达式"
sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"
‘伍’ 如何使用SQL语句查询数据库及表的空间容量
--1、查看表空间的名称及大小
select
t.tablespace_name,
round(sum(bytes/(1024*1024)),0)
ts_size
from
dba_tablespaces
t,
dba_data_files
d
where
t.tablespace_name
=
d.tablespace_name
group
by
t.tablespace_name;
--2、查看表空间物理文件的名称及大小
select
tablespace_name,
file_id,
file_name,
round(bytes/(1024*1024),0)
total_space
from
dba_data_files
order
by
tablespace_name;
3.查看所有表空间使用情况
select
b.file_id
文件ID号,
b.tablespace_name
表空间名,
b.bytes/1024/1024||'M'字节数,
(b.bytes-sum(nvl(a.bytes,0)))/1024/1024||'M'
已使用,
sum(nvl(a.bytes,0))/1024/1024||'M'
剩余空间,
round(100
-
sum(nvl(a.bytes,0))/(b.bytes)*100,2)||
'%'
占用百分比
from
dba_free_space
a,dba_data_files
b
where
a.file_id=b.file_id
group
by
b.tablespace_name,b.file_id,b.bytes
order
by
b.file_id;
总有一款适合你!
‘陆’ 在pl/sql中修改了表空间,在哪里可以查看日志,怎么查看操作的具体时间和改的容量
可以在alert日志中查看。
sqlplus / as sysdba
show parameter mp
在列出的目录中找到alert日志
vi一下alert文件就能看见日期和语句。
‘柒’ 在SQL数据库的SAP,怎样调整表空间
SQL SERVER 没有 TABLESPACE 的 概念但是 可以增加 DATAFILE还可以设置成自动增长只要关注磁盘空间就可以了 。是呀,就是这样的,可以配置自动增长来加大表和库的容量!!
‘捌’ 如何使用SQL语句修改表内的数据
修改表中内容
修改用到update语句,语句格式为:UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值
即 update 员工表 set 部门id=01 where 员工id=0004
SQL联合主键
Create Table 表名 (字段名1 Int Not Null,
字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),
字段名3…………
字段名N………… )
(8)sql修改表的所属空间扩展阅读
主键是数据库表的一个重要属性,建立主键可以避免表中存在完全相同的记录,也就是说主键在一张表中的记录值是唯一的。 建立主键有两种方法:一种是在数据库提供的GUI环境中建立,另一种是通过SQL语句执行建立,下面分别介绍。
在数据库提供的GUI环境中建立(以SQL7为例)。输入表信息后按Ctrl键同时选中多行,然后点上面的主键按钮就行了。
通过SQL语句执行建立。又分两种,一是在建表语句中直接写,二是建表之后更改表结构。
在建表语句中直接写:
Create Table 表名 (字段名1 Int Not Null,
字段名2 nvarchar(13) Not Null Primary Key (字段名1, 字段名2),
字段名3…………
字段名N………… )
‘玖’ PL/SQl Developer Oracle 表的表空间名称怎么修改
oracle中在pl/sql
developer修改表的2种方法,需要的朋友可以参考一下一、方式一select
*
from
student
for
updatestudent表需要操作人修改完commit之后才可以做其他的操作,否则该表会被锁住。二、方式二
select
t.*,t.rowid
from
student
t在pl/sql
developer中右击某表,显示的就是该语句,这样做不会将该表锁住。想修改某几个字段也没有问题select
num,name,t.rowid
from
student
t。
‘拾’ sql server如何修改默认表空间大小
use 要查询的数据bserp
exec sp_spaceused 'sdphd' ,true
exec sp_spaceused 'sdphd'
use 要查询的数据bserp
select object_name(id) tablename,8*reserved/1024 reserved,8*dpages/1024 used,8*(reserved-dpages)/1024 unused,8*dpages/1024-rows/1024*minlen/1024 free,
rows,* from sysindexes where indid=1 and object_name(id)='sdphd' --输入表名
order by reserved desc
use bserp
select object_name(id) tablename,8*reserved/1024 reserved,rtrim(8*dpages/1024)+'Mb' used,8*(reserved-dpages)/1024 unused,8*dpages/1024-rows/1024*minlen/1024 free,
rows,* from sysindexes
where indid=1 and (8*reserved/1024)>1
order by reserved desc --查看所有的表的空间大小