小编Kli*_*Max的帖子

如何向View添加主键?

我有一个视图,并希望将一个属性作为主键.

CREATE VIEW filedata_view
AS SELECT num PRIMARY KEY, id, ST_TRANSFORM(the_geom,900913) AS the_geom
FROM filedata
Run Code Online (Sandbox Code Playgroud)

但是得到一个错误

ERROR:  syntax error at or near "PRIMARY"
LINE 2: AS SELECT num PRIMARY KEY, id, ST_TRANSFORM(the_geom,900913)...
Run Code Online (Sandbox Code Playgroud)

使用postgesSQL 8.4.

这该怎么做?

postgresql postgresql-8.4

23
推荐指数
2
解决办法
1万
查看次数

如何在PostgreSQL中更改datestyle?

在postgres中,我有一个带有日期列的表.现在postgres允许我以Ymd格式写日期.但我需要d/m/Y格式的日期.怎么改呢?

当我做:

   show datestyle;
Run Code Online (Sandbox Code Playgroud)

我明白了:

 "ISO, DMY"
Run Code Online (Sandbox Code Playgroud)

并以此格式输入表格中的日期 13/02/2009

但当我再次关闭并打开桌子时,我看到了这一点2009-02-13.JDBC也以这种格式给出了日期.我究竟做错了什么?

postgresql

18
推荐指数
4
解决办法
5万
查看次数

Node.js中的URL组件编码

我想使用node.js发送http请求.我做:

http = require('http');

var options = {
    host: 'www.mainsms.ru',
    path: '/api/mainsms/message/send?project='+project+'&sender='+sender+'&message='+message+'&recipients='+from+'&sign='+sign
    };

    http.get(options, function(res) {
    console.log('STATUS: ' + res.statusCode);
    console.log('HEADERS: ' + JSON.stringify(res.headers));
    }).on('error', function(e) {
    console.log('ERROR: ' + e.message);
    });
Run Code Online (Sandbox Code Playgroud)

path这样的时候:

/api/mainsms/message/send?project=geoMessage&sender=gis&message=tester_response&recipients=79089145***&sign=2c4135e0f84d2c535846db17b1cec3c6
Run Code Online (Sandbox Code Playgroud)

这是工作.但是当message参数包含任何空格时,例如tester response所有空格.在控制台中我看到http使用这个网址:

  /api/mainsms/message/send?project=geoMessage&sender=gis&message=tester
Run Code Online (Sandbox Code Playgroud)

如何发送空间.或者我只是不能在网址中使用空格?

javascript urlencode url-encoding node.js percent-encoding

17
推荐指数
2
解决办法
4万
查看次数

我可以用什么构造代替Contains?

我有一个包含id的列表:

var myList = new List<int>();
Run Code Online (Sandbox Code Playgroud)

我想从db中选择来自myList的id的所有对象:

var objList= myContext.MyObjects.Where(t => myList.Contains(t.Id)).ToList();
Run Code Online (Sandbox Code Playgroud)

但是当myList.Count > 8000我收到错误时:

查询处理器耗尽了内部资源,无法生成查询计划.这是一种罕见的事件,仅适用于引用大量表或分区的极其复杂的查询或查询.请简化查询.如果您认为错误地收到了此消息,请与客户支持服务联系以获取更多信息.

我认为这是因为我使用过Contains().我可以使用什么而不是包含?

c# linq sql-server-2008-r2

16
推荐指数
4
解决办法
2028
查看次数

如何在Tomcat中添加本机库?

我想在Tomcat中添加gdal库.我读过Tomcat中找不到的Native库 但是不明白startup.bat我应该添加到哪里-Djava.library.path.

错误:

exception

javax.servlet.ServletException: Servlet execution threw an exception
com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:70)

root cause

java.lang.UnsatisfiedLinkError: org.gdal.ogr.ogrJNI.GetDriverCount()I
org.gdal.ogr.ogrJNI.GetDriverCount(Native Method)
org.gdal.ogr.ogr.GetDriverCount(ogr.java:98)
org.geotools.data.ogr.OGRDataStore.<clinit>(OGRDataStore.java:169)
test.Read.getKadnum(Read.java:56)
test.Zipper.mifUnzip(Zipper.java:139)
test.Zipper.Unzip(Zipper.java:60)
test.uploadfile.doPost(uploadfile.java:105)
javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:70)

note The full stack trace of the root cause is available in the Apache Tomcat/7.0.23 logs.
Run Code Online (Sandbox Code Playgroud)

我从http://vbkto.dyndns.org:1280/sdk/PackageList.aspx?file=release-1600-x64-gdal-1-9-mapserver-6-2.zip下载了gdal 64bit.

java tomcat java.library.path

13
推荐指数
3
解决办法
5万
查看次数

PostgreSQL更新触发器

我有一张桌子:

CREATE TABLE annotations
(
  gid serial NOT NULL,
  annotation character varying(250),
  the_geom geometry,
  "rotationAngle" character varying(3) DEFAULT 0,
  CONSTRAINT annotations_pkey PRIMARY KEY (gid),
  CONSTRAINT enforce_dims_the_geom CHECK (st_ndims(the_geom) = 2),
  CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 4326)
)
Run Code Online (Sandbox Code Playgroud)

并触发:

CREATE TRIGGER set_angle
AFTER INSERT OR UPDATE
ON annotations
FOR EACH ROW
EXECUTE PROCEDURE setangle();
Run Code Online (Sandbox Code Playgroud)

功能:

CREATE OR REPLACE FUNCTION setAngle() RETURNS TRIGGER AS $$
BEGIN
IF    TG_OP = 'INSERT' THEN
    UPDATE annotations SET "rotationAngle" = degrees( ST_Azimuth( ST_StartPoint(NEW.the_geom), ST_EndPoint(NEW.the_geom) ) )-90 …
Run Code Online (Sandbox Code Playgroud)

sql postgresql triggers plpgsql

9
推荐指数
2
解决办法
2万
查看次数

如何使用JAXB读取XML文件?

我使用JAXB从XML模式生成Java类.现在我想用这些类读取XML文件,但不能.我试试这个

    JAXBContext jaxbContext = JAXBContext.newInstance(STDMP.class);
    Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
    STDMP ts = (STDMP)jaxbUnmarshaller.unmarshal(xml_gkuzu);
    System.out.println(ts.getEDocument().getSender().getName());
Run Code Online (Sandbox Code Playgroud)

并得到这个例外

Exception in thread "main" java.lang.NullPointerException
at java.util.EnumMap.<init>(EnumMap.java:113)
at com.sun.xml.bind.v2.model.impl.RuntimeEnumLeafInfoImpl.<init>(RuntimeEnumLeafInfoImpl.java:87)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createEnumLeafInfo(RuntimeModelBuilder.java:109)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.createEnumLeafInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:229)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:104)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:214)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:99)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:320)
at com.sun.xml.bind.v2.model.impl.SingleTypePropertyInfoImpl.getTarget(SingleTypePropertyInfoImpl.java:94)
at com.sun.xml.bind.v2.model.impl.RuntimeAttributePropertyInfoImpl.getTarget(RuntimeAttributePropertyInfoImpl.java:66)
at com.sun.xml.bind.v2.model.impl.RuntimeAttributePropertyInfoImpl.getTarget(RuntimeAttributePropertyInfoImpl.java:54)
at com.sun.xml.bind.v2.model.impl.SingleTypePropertyInfoImpl.ref(SingleTypePropertyInfoImpl.java:88)
at com.sun.xml.bind.v2.model.impl.RuntimeAttributePropertyInfoImpl.ref(RuntimeAttributePropertyInfoImpl.java:70)
at com.sun.xml.bind.v2.model.impl.RuntimeAttributePropertyInfoImpl.ref(RuntimeAttributePropertyInfoImpl.java:54)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:260)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:104)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:214)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:99)
at com.sun.xml.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:85)
at com.sun.xml.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:320)
at com.sun.xml.bind.v2.model.impl.TypeRefImpl.calcRef(TypeRefImpl.java:96)
at com.sun.xml.bind.v2.model.impl.TypeRefImpl.getTarget(TypeRefImpl.java:73)
at com.sun.xml.bind.v2.model.impl.RuntimeTypeRefImpl.getTarget(RuntimeTypeRefImpl.java:62)
at com.sun.xml.bind.v2.model.impl.RuntimeTypeRefImpl.getTarget(RuntimeTypeRefImpl.java:55)
at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl$1.get(ElementPropertyInfoImpl.java:78)
at com.sun.xml.bind.v2.model.impl.ElementPropertyInfoImpl$1.get(ElementPropertyInfoImpl.java:76) …
Run Code Online (Sandbox Code Playgroud)

java xml jaxb

7
推荐指数
1
解决办法
1万
查看次数

在Java中将字符串转换为浮点数而不进行舍入

可能重复:
java Float.parseFloat中的舍入

我想将字符串转换为float我说:

System.out.println(Float.parseFloat("1553781.9829"));
Run Code Online (Sandbox Code Playgroud)

输出:

1553782.0
Run Code Online (Sandbox Code Playgroud)

我说:

System.out.println(Float.valueOf("1553781.9829"));
Run Code Online (Sandbox Code Playgroud)

输出:

1553782.0
Run Code Online (Sandbox Code Playgroud)

如何在不损失精度的情况下获得Float?

java

7
推荐指数
2
解决办法
1万
查看次数

如何在视图中添加ROW_NUMBER()?

在PostgreSQL 8.4中,我想从3个带id的表创建一个视图.所以我希望在我看来有这个结构:

num serial,
name_dispatcher character varying(250)
the_geom geometry
Run Code Online (Sandbox Code Playgroud)

我可以选择name_dispatcher,并the_geom从表:

 CREATE VIEW lineView
      AS SELECT 'name' AS name_dispatcher, the_geom
      FROM line1
      UNION
      SELECT 'name' AS name_dispatcher, the_geom
      FROM line2
      UNION
      SELECT 'name' AS name_dispatcher, the_geom
      FROM line3
Run Code Online (Sandbox Code Playgroud)

如何num在视图中创建列?

UPDATE

我找到了解决方案:

ROW_NUMBER() OVER(ORDER BY lineView.voltage)
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使用它ALTER VIEW.我怎么把它放在那里?

sql postgresql row-number sql-view

7
推荐指数
1
解决办法
2万
查看次数

如何在PostgreSQL中将表从服务器复制到另一个?

我在PostgreSQL 8.4上有两个服务器:

server1:5432
server2:5432
Run Code Online (Sandbox Code Playgroud)

现在我想从server1复制表并将其放在server2的数据库中.
它有可能做到吗?

UPDATE

我尝试在@Valery Viktorovsky的回答中做:

pg_dump --server1:5432 --encoding=utf8 --no-owner --username=postgres --123456 np_point > D:\np_point.sql
psql --server2:5432 --username=postgres mrsk -f D:\np_point.sql
Run Code Online (Sandbox Code Playgroud)

并得到错误:

ERROR:  syntax error at or near "pg_dump"
LINE 1: pg_dump --server1:5432 --encoding=utf8 --no-owner --use...
Run Code Online (Sandbox Code Playgroud)

postgresql

7
推荐指数
2
解决办法
1万
查看次数