Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 我们可以改变datomic枚举还是可以向datomic枚举添加任何新值?_Clojure_Datomic - Fatal编程技术网

Clojure 我们可以改变datomic枚举还是可以向datomic枚举添加任何新值?

Clojure 我们可以改变datomic枚举还是可以向datomic枚举添加任何新值?,clojure,datomic,Clojure,Datomic,例如,我有以下结构 {:db/id #db/id[:db.part/db] :db/ident :persons/gender :db/valueType :db.type/ref :db/cardinality :db.cardinality/one :db/doc "A person's gender enum reference" :db.install/_attribute :db.part/db} ;; :persons/gender enum va

例如,我有以下结构

{:db/id #db/id[:db.part/db]  
 :db/ident :persons/gender  
 :db/valueType :db.type/ref  
 :db/cardinality :db.cardinality/one  
 :db/doc "A person's gender enum reference"  
 :db.install/_attribute :db.part/db}  

;; :persons/gender enum values  
{:db/id #db/id[:db.part/user]  
 :db/ident :persons.gender/male}  

{:db/id #db/id[:db.part/user]  
 :db/ident :persons.gender/female}  
在设计之后,我想在现有结构中再添加一个属性
datomic..有可能吗?

简短的回答是肯定的,您并没有真正改变DB模式,只是添加了一个新的允许值,这样它就不会与任何现有数据冲突。此案例不被描述为模式变更,因为您可以在此处查看,您可能会发现这对您的用例有帮助。这是一个用户友好的库,使与Datomic的交互更容易、更轻松。

哦。。!!谢谢,有没有办法像sql一样重命名现有的attr?当然,答案在同一个链接上,不要生气,但你应该多搜索一点。要重命名:db/ident,请提交一个带有:db/id和新的:db/ident值的事务。此示例将:person/name的:db/ident更改为:person/full name<代码>[{:db/id:person/name:db/ident:person/full name}]