我正在寻找一种在Oracle 9数据库中执行多行插入的好方法.以下内容适用于MySQL,但在Oracle中似乎不受支持.
INSERT INTO TMP_DIM_EXCH_RT
(EXCH_WH_KEY,
EXCH_NAT_KEY,
EXCH_DATE, EXCH_RATE,
FROM_CURCY_CD,
TO_CURCY_CD,
EXCH_EFF_DATE,
EXCH_EFF_END_DATE,
EXCH_LAST_UPDATED_DATE)
VALUES
(1, 1, '28-AUG-2008', 109.49, 'USD', 'JPY', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008'),
(2, 1, '28-AUG-2008', .54, 'USD', 'GBP', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008'),
(3, 1, '28-AUG-2008', 1.05, 'USD', 'CAD', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008'),
(4, 1, '28-AUG-2008', .68, 'USD', 'EUR', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008'),
(5, 1, '28-AUG-2008', 1.16, 'USD', 'AUD', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008'),
(6, 1, '28-AUG-2008', 7.81, 'USD', 'HKD', '28-AUG-2008', '28-AUG-2008', '28-AUG-2008');
Run Code Online (Sandbox Code Playgroud) 在设计表时,我养成了一个习惯,就是让一个列是唯一的,并且我制作了主键.这取决于要求以三种方式实现:
数字3将用于相当小的查找,主要是可能具有唯一静态长度字符串代码的读取表,或者诸如年份或其他数字的数字值.
在大多数情况下,所有其他表将具有自动递增整数或唯一标识符主键.
我最近开始使用没有一致行标识符的数据库,主键目前在各个列上进行聚类.一些例子:
这有一个有效的案例吗?我总是会为这些案例定义一个标识或唯一标识符列.
此外,还有许多表没有主键.这有什么正当理由?
我试图理解为什么桌子的设计原样,对我来说这似乎是一个很大的混乱,但也许有充分的理由.
第三个问题可以帮助我解释答案:在使用多列构成复合主键的情况下,这种方法与代理/人工密钥相比有特定的优势吗?我主要考虑的是性能,维护,管理等方面?
我是CS的第一年学生,我兼职为我爸爸的小生意做准备.我没有任何实际应用程序开发经验.我用Python编写脚本,用C编写一些课程,但没有这样的.
我父亲有一个小型培训业务,目前所有课程都通过外部网络应用程序进行安排,记录和跟进.有一个导出/"报告"功能,但它非常通用,我们需要特定的报告.我们无权访问实际数据库来运行查询.我被要求建立一个自定义报告系统.
我的想法是创建通用CSV导出并导入(可能使用Python)它们每晚都在办公室中托管的MySQL数据库中,从那里我可以运行所需的特定查询.我没有数据库方面的经验,但了解非常基础知识.我已经阅读了一些关于数据库创建和普通表单的内容.
我们可能很快就会开始拥有国际客户,因此我希望数据库在发生这种情况时不会爆炸.我们目前还有几家大公司作为客户,有不同的部门(例如ACME母公司,ACME医疗保健部门,ACME身体护理部门)
我提出的架构如下:
我在一张纸上"设计"(更像是潦草书写)模式,试图将其标准化为第三种形式.然后我把电源插头插上到MySQL Workbench和它使人们都非常适合我:
(点击查看全尺寸图片)
替代文字http://maian.org/img/schema.png
谢谢你的时间
mysql database schema database-design database-normalization
我在MVC应用程序中阅读了大量有关页面缓存和部分页面缓存的信息.但是,我想知道如何缓存数据.
在我的场景中,我将使用LINQ to Entities(实体框架).在第一次调用GetNames(或任何方法)时,我想从数据库中获取数据.我想将结果保存在缓存中,并在第二次调用时使用缓存版本(如果存在).
任何人都可以展示一个如何工作的例子,应该在哪里实现(模型?)以及它是否可行.
我已经在传统的ASP.NET应用程序中看到了这一点,通常用于非常静态的数据.
为什么SELECT *不好做法?如果添加了您想要的新列,是不是意味着要更改的代码更少?
我知道这SELECT COUNT(*)是一些DB上的性能问题,但是如果你真的想要每一列呢?
我正在尝试使用Apple上的终端(使用PHP)连接到我的MySQL数据库.
昨天它工作正常,现在我突然得到标题中的错误.
当我使用浏览器运行它时(我安装了XAMPP),脚本可以工作,但终端拒绝连接到数据库.
这是我包含连接的文件(当我不包含此脚本时脚本工作,但它不连接到DB):
<?php
mysql_connect("localhost", "root", "") or die(mysql_error());
mysql_select_db("FNB1C_data") or die(mysql_error());
?>
Run Code Online (Sandbox Code Playgroud)
这应该工作,因为它适用于我的浏览器.
我在终端使用的命令是php scriptname.php.
您是否需要显式创建索引,还是在定义主键时是隐式的?MyISAM和InnoDB的答案是否相同?
我正在使用mysql数据库.我在主键和唯一键之间存在混淆.
请帮我在哪里创建主键和唯一键.我的意思是在哪种情况下我们创建唯一的密钥或主键.
database ×10
mysql ×4
sql ×4
indexing ×2
asp.net-mvc ×1
caching ×1
join ×1
key ×1
oracle ×1
oracle9i ×1
php ×1
primary-key ×1
relational ×1
schema ×1
sql-insert ×1
sql-server ×1
union ×1
unique-key ×1