我在Postgresql中有一个表
DROP TABLE xml_docs;
CREATE TABLE xml_docs(
id serial PRIMARY KEY,
cad_number character(50),
gkuzu_name character(50),
gkuzu xml,
rreq_name character(50),
rreq xml
)
Run Code Online (Sandbox Code Playgroud)
我使用JDBC进行数据库连接.我想在表中插入整个xml文档.
我该怎么做?
UPDATE
好.我试试
String sql = "INSERT INTO xml_docs(cad_number,gkuzu_name,gkuzu,rreq_name,rreq) VALUES(?,?,?,?,?)";
PreparedStatement stmt = ce.prepareStatement(sql);
stmt.setString(1, "11:33:5464563");
stmt.setString(2, xml_gkuzu.getName());
stmt.setString(3, xml_gkuzu.toString());
stmt.setString(4, xml_rreq.getName());
stmt.setString(5, xml_rreq.toString());
stmt.executeQuery();
ce.close();
se.close();
Run Code Online (Sandbox Code Playgroud)
得到了解释
Exception in thread "main" org.postgresql.util.PSQLException: ERROR: column "gkuzu" is of type xml but expression is of type character varying
?????????: You will need to rewrite or cast the expression. …Run Code Online (Sandbox Code Playgroud) 我尝试使用此XSD中的JaXB创建Java类http://pda.rosreestr.ru/upload/www/files/02_V04_STD_Region_Cadastr_KV.rar.但是得到这个错误.
parsing a schema...
[WARNING] Simple type "dAllDocuments" was not mapped to Enum due to EnumMemberSizeCap limit. Facets count: 298, current limit: 256. You can use customization attribute "typesafeEnumMaxMembers" to extend the limit.
line 3 of file:/D:/liferay-develop/workspace/JABX_test/src/02_V04_STD_Region_Cadastr_KV/dAllDocuments.xsd
compiling a schema...
[ERROR] Two declarations cause a collision in the ObjectFactory class.
line 1645 of file:/D:/liferay-develop/workspace/JABX_test/src/02_V04_STD_Region_Cadastr_KV/STD_Region_Cadastr_KV.xsd
[ERROR] (Related to above error) This is the other declaration.
line 1587 of file:/D:/liferay-develop/workspace/JABX_test/src/02_V04_STD_Region_Cadastr_KV/STD_Region_Cadastr_KV.xsd
Failed to produce code.
Run Code Online (Sandbox Code Playgroud)
当我使用另一个模式时一切都很好.我不擅长使用XML,你能告诉我这些错误意味着什么以及如何解决它吗?
UPDATE
我尝试在类生成中使用binding.xml但是得到了这个错误.
C:\Documents and Settings\kliver\??? …Run Code Online (Sandbox Code Playgroud) 我想在eclipse中创建db方案,但不知道我可以用它来做什么.我尝试了ERMaster http://ermaster.sourceforge.net/content/manual/en/index.html#3.1..但它看起来很糟糕.你能告诉我简单插入eclipse什么可以导入db并显示它的方案?
我有一个日期格式的列2006-09-08 14:39:41.000.
我想使用此列创建视图,但我需要在ISO 8601中显示日期:yyyy-MM-ddThh:mm:ss.SSSZ.
我怎么转换它?
我有使用ExtJs 3.4的应用程序.
我有这个结构:
westPanel-的TabPanel:
var westPanel = new Ext.TabPanel({
id: "west",
//xtype: "tabpanel",
//layout:'fit',
activeTab: 0,
region: "west",
border: false,
width: 278,
split: true,
collapseMode: "mini",
items: [mapList,structure,cadastr,search]
});
Run Code Online (Sandbox Code Playgroud)
搜索 - FormPanel:
var search = new Ext.FormPanel({
labelAlign: 'top',
frame:true,
title: '?????',
bodyStyle:'padding:5px 5px 0',
//width: 600,
//layout:'fit',
items: [{
xtype:'textfield',
fieldLabel: '???????????? ????????????',
name: 'name_dispather',
anchor:'100%',
enableKeyEvents: true,
listeners: {
'keyup': function(e) {
if(e.getValue().length==4){
searchStore.load({params:{'name':e.getValue()}});
}
}
}
},searchTab]
});
Run Code Online (Sandbox Code Playgroud)
SearchTab - GridPanel:
var searchTab = new Ext.ux.grid.livegrid.GridPanel({
store: …Run Code Online (Sandbox Code Playgroud) 我尝试:
SELECT
,6 AS ObjectTypeId
,[GeomColumn] AS geom
FROM [dbo].[myTable1]
UNION
SELECT
,objTyleId AS ObjectTypeId
,[GeomColumn] AS geom
FROM [dbo].[myTable2]
Run Code Online (Sandbox Code Playgroud)
但是出现了错误:
The data type geometry cannot be used as an operand to the UNION, INTERSECT or EXCEPT operators because it is not comparable.
Run Code Online (Sandbox Code Playgroud)
是否存在用几何列合并表的另一种方法?
我有一个大的XML文件和几个POJO clasess需要读取这个XML.当我尝试用一个POJO读取测试文件时我使用这个:
JAXBContext jaxbContext = JAXBContext.newInstance(Test.class);
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
Test ts = (Test)jaxbUnmarshaller.unmarshal(file);
System.out.println(ts.getName());
Run Code Online (Sandbox Code Playgroud)
但是当我有30个POJO时,我会做什么?创建这4行30次?给我建议.
UPDATE
我如何理解这个例子http://blog.bdoughan.com/2010/08/using-xmlanyelement-to-build-generic.html 使用几个POGO我将使用
JAXBContext.newInstance("message:customer:product:order");
Run Code Online (Sandbox Code Playgroud)
在这个考试中,autor有3个咒语,但只有两个有an @XmlRootElement注释.为什么?
我尝试使用Jaxb获取变量验证消息.从这里试试示例http://docs.oracle.com/cd/E17802_01/webservices/webservices/docs/1.6/api/javax/xml/bind/Unmarshaller.html
我的代码:
JAXBContext jaxbContext = JAXBContext.newInstance("com.piyush");
SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI);
Schema schema = factory.newSchema(new StreamSource(new File("D:/liferay-develop/workspace/cat_test/v1/STD_MP.xsd")));
Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
jaxbUnmarshaller.setSchema(schema);
ValidationEventCollector validationCollector= new ValidationEventCollector();
jaxbUnmarshaller.setEventHandler( validationCollector );
STDMP ts = (STDMP)jaxbUnmarshaller.unmarshal(xml_gkuzu);
if(validationCollector.hasEvents())
{
for(ValidationEvent event:validationCollector.getEvents())
{
String msg = event.getMessage();
System.out.println(msg);
}
}
Run Code Online (Sandbox Code Playgroud)
但没有任何反应.我究竟做错了什么 ?
我尝试像 sencha示例中那样扩展 Button 。
我确实摆弄
并得到错误:TypeError: this.addEvents is not a function : 'statesave'。
怎么了?
Thera是PostgreSQL 8.4中的触发器:
CREATE OR REPLACE FUNCTION updateMarkers()
RETURNS trigger AS
$$
BEGIN
IF NEW.status='?????' THEN
UPDATE markers SET statusId=0;
RETURN NEW;
ELSE IF NEW.status='? ??????' THEN
UPDATE markers SET statusId=2;
RETURN NEW;
ELSE IF NEW.status='????????' THEN
UPDATE markers SET statusId=3;
RETURN NEW;
ESLE
UPDATE markers SET statusId=4;
RETURN NEW;
END IF;
END;
$$
LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)
我得到了语法错误ESLE.
什么可能是错的?
java ×4
jaxb ×3
xml ×3
extjs ×2
javascript ×2
postgresql ×2
sql ×2
sql-server ×2
eclipse ×1
extjs3 ×1
jdbc ×1
validation ×1
xsd ×1