问题标签 [ddl]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
456 浏览

nhibernate - 有效地使用模式导出

我们使用 NHibernate 作为我们的 ORM 框架。我们需要持久化我们在运行时加载的类。我们根据它们附带的元数据来执行此操作,这些元数据包含它们拥有的数据的名称和类型。为了在运行时为它们构建表,我们使用 NHibernate ToolSet API 中的 SchemaExport 类。

我们想问两个问题:

  1. 有没有办法让 NHibernate 在一次到数据库的往返中完成所有实际创建,而不是每张表的往返?
  2. 为了使用 SchemaExport 工具,我们正在构建一个动态字符串,该字符串表示来自我们保留的模板的映射文件。有一个更好的方法吗?甚至可能没有映射字符串?
0 投票
1 回答
6019 浏览

mysql - 在 MySQL 中定义默认日期值,类似于时间戳

我正在使用 MySQL(没有人是完美的),版本 4.1,我习惯于定义一些像这样的时间戳列:

我想做完全相同的事情,但对于 DATE 字段。原因是我不需要 TIMESTAMP 精度,并且由于 MySQL 中不存在功能索引,因此我无法快速访问具有给定日期的行(无论一天中的什么时间)。所以我尝试了以下方法,但它不起作用:

甚至

这也不起作用。

有任何想法吗?

0 投票
3 回答
177 浏览

sql - 了解 SQL/DDL 中有关案例的一句话 - 查询

这个问题是基于这个答案

下面的句子是什么意思?

最后,不要使用大小写混合的标识符。一切都小写,所以你不必引用它们。

这是否意味着我应该将 CREATE TABLE、USER_ID 和 NOT NULL 等命令更改为小写?- 它不能,因为它违反了常见的命名约定。

0 投票
1 回答
9359 浏览

sql - 通过 PostgreSQL 为数据库中的列设置默认值

我正在做我的第一个数据库项目。

我想知道如何false将以下 SQL 查询作为默认值

语境

如何设置 PostgreSQL 的默认falseMODERATOR_REMOVAL

0 投票
5 回答
228 浏览

sql - 使用 SQL 模拟表创建

是否有一种标准方法可以使用 SQL 在数据库中模拟表创建?我不想创建表,只需检查它是否可以创建。一种方法是创建它,然后再次删除它。还有什么办法吗?

0 投票
1 回答
1874 浏览

hibernate - 使用 Hibernate (hbm2ddl) 克隆表的定义

在我的休眠应用程序中有注释驱动对象:AuditEvent。它非常简单,没有外键关系。我通过将旧条目移动到另一个表OldAuditEvent来归档该表中的旧条目,该表是AuditEvent表 的克隆。

现在,我们使用 hbm2ddl(在我们的注释数据模型上)为整个应用程序生成 DDL,并手动复制/粘贴 AuditEvent 表并更改其名称以创建OldAuditEvent

我想自动化构建过程,有什么方法可以告诉 hbb2ddl:“嘿,拿这个实体,将表名更改为 X 并重新生成它的 DDL”?

更新:我能够通过您概述的方法来完成这项工作。唯一的麻烦在于 AnnotationSessionFactoryBean 因为它是一个工厂 bean,而 spring 只会给你它工厂的输出。我创建了 ConfigExposingAnnotationSessionFactoryBean(扩展 AnnotationSessionFactoryBean)以通过静态公开 bean 工厂——有点像 hack,但我想要做的就是运行构建时任务。

0 投票
2 回答
15856 浏览

sql - 在 MS SQL Server 2005 中重命名列

使用 SQL(MS SQL Server 2005 变体)重命名表列时,最佳实践是什么?这假定列中有必须保留的数据。

0 投票
2 回答
23479 浏览

oracle - 如何在 Oracle 上使用“ON UPDATE CASCADE”创建外键?

在 MS SQL Server 中,可以使用ON UPDATE CASCADE选项创建外键,因此每当您更新主键中的列之一时,其他表中的外键也将由 DBMS 更新。

那么,如何在 Oracle 中做到这一点?

0 投票
3 回答
2623 浏览

sql - 如何使用标准 SQL 提取视图的定义?

在尝试为自己回答这个问题时,在最终将“oracle”添加到我的查询词之后,我遇到了这个问题:

哪个有效,但不可移植。我如何在 MySQL 上做同样的事情?SQLite?其他的?

0 投票
2 回答
38488 浏览

sql - 如何在 Oracle 中创建唯一索引但忽略空值?

我正在尝试在表中的两个字段上创建唯一约束。但是,一个为空的可能性很高。name如果两者都不为空(永远不会为空),我只要求它们是唯一的。

忽略表和字段名称的语义以及这是否有意义——我只是编造了一些。

有没有办法在这些字段上创建一个唯一约束,这将强制两个非空值的唯一性,但如果有多个name非空且email为空的条目则忽略?

这个问题是针对 SQL Server 的,我希望答案不一样: 如何创建一个也允许空值的唯一约束?