这篇文章如题所述,只打算谈一下数据库表本身设计,同时讲到和表结构相关的性能和扩展性问题。下面讲到的东西大多是从实际经验中总结而来,算是对这项技术的一个反思。
基本上在设计数据库表的时候,首先考虑设计要满足功能需求,这是最根本的,其次是满足性能需求,再次则是满足扩展性需求,这一点在大规模系统中是必须要考虑的。功能性需求比较容易满足,下面我主要谈谈对性能和扩展性需求
转载
2010-08-18 11:24:51
1200阅读
1、准备函数CREATE OR REPLACE
function fnc_table_to_mysql
( i_owner in string,
i_table_name in string,
i_number_default_type in string := 'decimal',
转载
2021-03-25 09:14:44
1336阅读
2评论
分析Oracle下导出某用户所有表的方法 可能很多使用Oracle的客户都会遇到想把某用户所有
原创
2021-12-04 17:43:22
1862阅读
Oracle导出表结构 select A.Table_Name 表名 , -- A.column_name 字段名 A.column_name 字段名, A.data_type 数据类型, A.data_length 长度, A.Data_scale 小数位, A.nullable 允许空值, A.
转载
2019-10-23 12:09:00
1871阅读
2评论
分析Oracle下导出某用户所有表的方法 可能很多使用Oracle的客户都会遇到想把某用户所有表导出的情况,本文就提供这样一个方法帮你轻松解决这个问题。 首先在sqlplus下以该用户登录到Oracle数据库
转载
2012-01-10 18:32:00
727阅读
2评论
一、SQL语句的书写规则: (1)不区分大小写(2)可以单行来书写,也可以书写多行,建议分多行书写,增强代码的可读性(3)关键字不可以缩写、分开以及跨行书写(4)关键字最好是用大写,其它语法元素小写(5)Tab和缩进的使用可以提高程序的可读性 二、选择列 (1)选择所有列: SELECT * FRO ...
转载
2021-10-01 20:37:00
102阅读
2评论
1、凡是具有业务的,例如学号,身份证号等,都不要设计成主键, 尽管这些字段在一定范围内是唯一的。则,应该用一个飞业务的字段作为主键。2、对于多表内,经常重复的内容,比如学生表,成绩表,课程表。那么不要把三 个表内字段都设计到一个表中,这样会有很多重复的字段,所以要把表分为三 个表,并且学生表的主键作为另外两个表的外键。
原创
2021-05-31 10:44:19
437阅读
1、凡是具有业务的,例如学号,身份证号等,都不要设计成主键, 尽管这些字段在一定范围内是唯一的。则,应该用一个飞业务的字段作为主键。2、对于多表内,经常重复的内容,比如学生表,成绩表,课程表。那么不要把三 个表内字段都设计到一个表中,这样会有很多重复的字段,所以要把表分为三 个表,并且学生表的主键作为另外两个表的外键。
原创
2021-08-07 11:59:00
127阅读
exp username/psd@sid file='E:\xx.dmp' tables=(xxx_%) ROWS=N 以下代码没什么用,我就乱写set oracle_sid=ora11gsqlplus / as sysdbacreate directory expdpbak as 'd:\expdpbak';expdp HBHMP/HBHMP DIRECTORY
原创
2022-06-30 15:32:46
139阅读
在Oracle数据库中,可以使用expdp(数据泵工具)和exp(传统导出工具)命令来导出表结构。1. 使用expdp命令导出表结构:expdp username/password DIRECTORY=directory_name DUMPFILE=dumpfile_name.dmp SCHEMAS=schema_name CONTENT=METADATA_ONLY
– `username/pas
原创
2024-02-10 16:51:08
1696阅读
1.修改表的字段:修改一个列的数据类型(一般限于修改长度,修改为一个不同类型时有诸多限制):语法: ALTER TABLE 表名 MODIFY(列名 数据类型);eg1: alter table skate_test modify (author number(10,0) );在修改列的长度时,只能改为比现有字段实际存的长度还要大,否则提示下面错误:ORA-01441: 无
原创
2014-02-28 10:49:43
6566阅读
修改表名:alter table 表名 rename to 新名 添加字段: alter table 表名 add 字段
原创
2022-07-13 15:25:05
168阅读
概述: 复制表的结构(只复制表结构,源表名:b_Jkpt_Oaxt_Trafficaccident 新表名:Test_OAXT_TrafficAccident) Oralce语句: create table Test_OAXT_TrafficAccident as select * from b_Jkpt_Oaxt_Trafficaccident where 1=2
原创
2021-07-31 15:40:46
268阅读
select dbms_metadata.get_ddl('TABLE','TABLE_NAME') from dual;TABLE_NAME是你要查询的表名,注意这个必须大写。
原创
2019-04-26 12:24:34
104阅读
//只复制表结构 create table CODES_TEMP as select * from CODES where 1=2 //复制表数据 insert into CODES_TEMP select * f
原创
2011-05-26 14:24:52
1704阅读
参考链接
橘子Jane
原创
2022-07-14 14:57:55
219阅读
SQL Server数据库与Oracle数据库之间最大的区别要属表空间设计。Oracle数据库开创性地提出了表空间的设计理念,这为Oracle数据库的高性能做出了不可磨灭的贡献。可以这么说,Oracle中很多优化都是基于表空间的设计理念而实现的。 典型应用一:控制用户所占用的表空间配额。 在一些大型的数据库应用中,我们需要控制某个用户或者某一组用户其所占用的磁盘空间。这就好像在文件服务器中,需要为每个用户设置磁盘配额一样,以防止硬盘空间耗竭。所以,在数据库中,我们也需要限制用户所可以使用的磁盘空间大小。为了达到这个目的,我们就可以通过表空间来实现。 我们可以在Oracle数据库中,建立不同的表
转载
2011-05-27 13:31:00
117阅读
2评论
create table RNS_PS_HO1_MSC_RAw as select * from RNS_PS_HO1_MSC_RAW@oracle_oss where1=0说明:where 1=0 表示没有记录的空表
原创
2014-05-30 13:37:08
454阅读
1.查询表的备注信息select t.* from all_tab_comments t where t.TABLE_NAME like '%表名%'and t.OWNER like '%数据库%'2.查询列备注信息SELECT t.OWNER,t.TABLE_NAME,t.COLUMN_NAME,t.COMMENTSFROM ALL_COL_COMMENT..
原创
2023-01-09 17:18:52
843阅读
很多时候开发人员需要跟我们确认表的结构及索引情况,偶尔要一两个还好接受,但
原创
2023-03-10 10:28:48
226阅读