草庐IT

DDL和DML

全部标签

mysql - 在 MySQL 和 SQL Server 上通过查询生成表 DDL

有没有一种简单的方法可以使用Ms或MySQL服务器通过查询来提取表DDL信息?(最好两者都有?)例如使用MySQLAdministrator/NavicatforMySql,有一个“DDL”函数,生成“createtablefoo(....)”脚本。有没有办法从查询本身获取这些信息,例如:SelectDDLfromfoowheretable_name='bar';有没有“创建表格栏(.....)”返回给我?如果没有-有什么建议吗? 最佳答案 它是mysql特有的,但是SHOWCREATETABLE为您提供表的DDL。

mongodb - 在哪里可以找到 Mongodb 中执行的 DDL 命令

我想知道通过TTL索引删除的文档的日志。我尝试使用db.setProfileLevel(2)并搜索db.system.profile.find({op:"remove"}).pretty(),但它返回什么都没有。您能否告诉我使用TTLMongoDB功能自动删除的文档的位置(类型IDs等)? 最佳答案 来自手册ExpireDatafromCollectionsbySettingTTLWhentheTTLthreadisactive,youwillseeadeleteoperationintheoutputofdb.currentOp(

mongodb - 在哪里可以找到 Mongodb 中执行的 DDL 命令

我想知道通过TTL索引删除的文档的日志。我尝试使用db.setProfileLevel(2)并搜索db.system.profile.find({op:"remove"}).pretty(),但它返回什么都没有。您能否告诉我使用TTLMongoDB功能自动删除的文档的位置(类型IDs等)? 最佳答案 来自手册ExpireDatafromCollectionsbySettingTTLWhentheTTLthreadisactive,youwillseeadeleteoperationintheoutputofdb.currentOp(

java - 从 JPA 实体逆向工程 DDL

我正在玩一些JPA的东西,更改映射以查看它们应该如何等等。这是基本的实验。但是我找不到一个工具可以简单地读取我的实体然后为我生成表模式。我试图在JBoss工具中找到类似的东西,但nada。Eclipse集成将是一个巨大的优势,但我会使用命令行工具或ant任务。有什么想法吗? 最佳答案 尝试将以下内容添加到您的persistence.xml对于hibernate:创建:删除和创建:Toplink:创建:删除和创建:对于EclipseLink:创建:删除和创建: 关于java-从JPA实体逆

java - Hibernate 生成的 DDL 中的无效语法错误 "type= MyISAM"

我的Java代码出现此错误Causedby:`com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException`:YouhaveanerrorinyourSQLsyntax;checkthemanualthatcorrespondstoyourMariaDB`serverversionfortherightsyntaxtousenear'type=`MyISAM`'atline1这是hibernate传递的查询:Hibernate:createtableEMPLOYEE(emp_idintegernotnull,FNAMEvarchar

java - "Not supported for DML operations"使用简单的 UPDATE 查询

我在使用以下HQL时收到错误DML操作不支持...@Query("UPDATEWorkstationEntitywSETw.lastActivity=:timestampWHEREw.uuid=:uuid")voidupdateLastActivity(@Param("uuid")Stringuuid,@Param("timestamp")Timestamptimestamp);什么可能导致问题?鉴于我在Google中找到的少数结果,这似乎不是一个常见错误。 最佳答案 查看帖子hibernatehqlERROR:Notsupport

java - JPA - 如何在 DDL 中将字符串列设置为 varchar(max)

与JPA,属性的DDL生成:@ColumnfinalStringsomeString;将是someStringvarchar(255)null@Column(length=1337)finalStringsomeString;将产生someStringvarchar(1337)null。但是我怎样才能让它产生someStringvarchar(max)null?是否可以使用length-属性,还是我需要使用columnDefinition-属性? 最佳答案 几个月过去了,获得了新知识,所以我将回答我自己的问题:@Lob@Column

java - 不支持使用 JPA 更新查询的 DML 操作

这已经被问过一次,但解决方案没有解决问题。我正在创建一个JUnit测试:@Test@Transactional@ModifyingpublicvoidupdateMaterialInventory()throwsException{//InitializethedatabasematerialRepository.saveAndFlush(material);longid=material.getId();materialRepository.updateMaterialInventory(id,UPDATED_INVENTORY_COUNT);assertEquals(materia

java - 如何关闭 hbm2ddl?

我找不到有关如何关闭hbm2ddl的引用资料。 最佳答案 只是省略hibernate.hbm2ddl.auto默认Hibernate不做任何事情。来自引用文档:1.1.4.HibernateconfigurationThehbm2ddl.autooptionturnsonautomaticgenerationofdatabaseschemasdirectlyintothedatabase.Thiscanalsobeturnedoffbyremovingtheconfigurationoption,orredirectedtoafil

java - Spring 启动和 hibernate : print/log DDL

在添加一个或多个具有数据库映射(JPA/hibernate)的类之后,我希望Hibernate打印出必要的架构更新,以便我可以在数据库上执行它们(例如通过FlyWay)。我不希望自动执行更新。似乎可以对此进行一些控制的唯一属性如下org.hibernate.tool.hbm2ddl=validate|update|create|create-drop|none我不想自动更新/更改任何内容。我想将其设置为验证或无。当我这样做时,我看不到生成的架构。我是经典的spring应用,以前使用hibernate的SchemaExport类来打印DDL。SchemaExportschemaExpor