小编ner*_*tor的帖子

Postgres COPY FROM csv file-没有这样的文件或目录

我正在尝试将一个(相当大的).txt文件导入PostgreSQL 9.1中的表格地名.我在我的服务器的/〜目录中,在该目录中放置了一个名为US.txt的文件.我将search_path变量设置为geochat,我正在使用的数据库的名称.然后我输入此查询:

COPY geonames
FROM 'US.txt',
DELIMITER E'\t',
NULL 'NULL');
Run Code Online (Sandbox Code Playgroud)

然后我收到此错误:

ERROR: could not open file "US.txt" for reading: No such file or directory.
Run Code Online (Sandbox Code Playgroud)

我是否必须首先输入\i US.txt或类似的东西,或者它应该从当前的工作目录中获取它?

csv postgresql import tsv psql

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

即使软件包回购网站上列出了Alpine Linux中缺少的软件包

我正在尝试构建一个使用GDAL和必要的Python挂钩运行Alpine Linux的Docker容器:

FROM python:3.6-alpine

RUN apk update

RUN apk add py-gdal gdal

RUN pip install uwsgi

RUN mkdir /code
WORKDIR /code
COPY requirements.txt .

RUN pip install -r requirements.txt

COPY . .

CMD ["uwsgi", "--ini", "uwsgi.ini"]
Run Code Online (Sandbox Code Playgroud)

如您所见,我正在运行一条apk update语句来更新存储库,然后运行一条apk add语句来安装软件包。这是我收到的输出:

/usr/bin/make -f /Users/some_guy/Workspace/tagging_tracker_backend/Makefile build up
Pulling nginx ... 
Pulling db    ... 
Pulling web   ... 
db uses an image, skipping
Building nginx
Step 1/3 : FROM nginx:1.15
 ---> 7042885a156a
Step 2/3 : RUN rm /etc/nginx/conf.d/default.conf
 ---> Using cache …
Run Code Online (Sandbox Code Playgroud)

python linux gdal docker alpine-linux

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

C#性能的影响和操作的变化

常量通常用于C/C++编程中,作为产生更清晰代码的一种方式.有时也可能存在优化益处.但是,我想知道除了更易读的代码之外,从C#中声明值是只读还是在C#中可以获得什么好处.

假设我有以下C#代码:

public Double HalfPiSomething(Int32 input)
{
    return input + (Math.PI / 2);
}
Run Code Online (Sandbox Code Playgroud)

这是一个相当简单的例子,但每次调用该方法时,我们除以Math.PI2,将其添加到输入,并将其返回到调用语句.

让我们接受代码并Math.PI / 2在包含类的某个地方创建自己的变量:

private Double _halfPi = Math.PI / 2;

public Double HalfPiSomething(Int32 input)
{
    return input + _halfPi;
}
Run Code Online (Sandbox Code Playgroud)

显然,将其操作Math.PI / 2并将其置于自己的变量中是一个好主意,就像基本的编码实践一样,特别是如果所述值在类中的多个点中使用...它不是在这里,而是让我们假装.

最后,因为_halfPi永远不会改变让我们做到const:

private const Double _halfPi = Math.PI / 2;

public Double HalfPiSomething(Int32 input)
{
    return input + _halfPi;
}
Run Code Online (Sandbox Code Playgroud)

我想知道的是,除了作为C#的良好编码实践并使代码更容易理解并且更难以发现错误之外,还有什么好处 - 特别是关于性能 - 去做我上面做的事情?值是否会在本地内存中保留更长时间?

c# c++ optimization performance

4
推荐指数
1
解决办法
87
查看次数

Mono 在 Linux 上找不到 System.Data.dll

我正在尝试使用 dmcs(和 gmcs...我都尝试过)从这里编译以下示例:

using System;
using System.Data;
using Mono.Data.Sqlite;

public class Example
{

    static void Main() 
    {
        string cs = "URI=file:test.db";

        using( SqliteConnection con = new SqliteConnection(cs))
        {

            con.Open();

            DataTable table = new DataTable("Friends2");

            DataColumn column;
            DataRow row;

            column = new DataColumn();
            column.DataType = System.Type.GetType("System.Int32");
            column.ColumnName = "Id";
            table.Columns.Add(column);

            column = new DataColumn();
            column.DataType = Type.GetType("System.String");
            column.ColumnName = "Name";
            table.Columns.Add(column);

            row = table.NewRow();
            row["Id"] = 1;
            row["Name"] = "Jane";
            table.Rows.Add(row);

            row = table.NewRow();
            row["Id"] = 2;
            row["Name"] = …
Run Code Online (Sandbox Code Playgroud)

c# sqlite mono system.data

3
推荐指数
1
解决办法
5010
查看次数

Heroku GeoDjango问题缺少GDAL(可能还有GEOS)

我正在研究GeoDjango应用程序,并使用Heroku(带有Heroku-16堆栈)作为我的平台.

我按照此处的说明进行操作,其中指定了以下内容:

如果您的应用程序需要地理库,则可以获得对少数这些库的实验性支持:

  • GDAL v2.2.1(雪松-14的v1.11.5)
  • Geos v3.6.2(雪松-14的v3.4.2)
  • Proj v4.9.3(雪松-14的v4.8.0)

要使这些库可用于您的应用程序,只需设置BUILD_WITH_GEO_LIBRARIES环境变量:

$ heroku config:set BUILD_WITH_GEO_LIBRARIES=1
Run Code Online (Sandbox Code Playgroud)

在下次构建期间,将下载并安装这些库.在您的Django settings.py中,还添加以下内容:

import dj_database_url
DATABASES['default'] = dj_database_url.config()
DATABASES['default']['ENGINE'] = 
'django.contrib.gis.db.backends.postgis'

GDAL_LIBRARY_PATH = os.getenv('GDAL_LIBRARY_PATH')
GEOS_LIBRARY_PATH = os.getenv('GEOS_LIBRARY_PATH')
Run Code Online (Sandbox Code Playgroud)

这将确保Django可以找到已安装的GEOS库.

我在Heroku中设置了env变量:

图片

但是,我发现在部署时这没有什么不同:

2017-09-23T19:29:55.142378+00:00 app[web.1]:     % '", "'.join(lib_names)
2017-09-23T19:29:55.142414+00:00 app[web.1]: 
django.core.exceptions.ImproperlyConfigured: Could not find the GDAL 
library (tried "gdal", "GDAL", "gdal2.1.0", "gdal2.0.0", "gdal1.11.0", 
"gdal1.10.0", "gdal1.9.0"). Is GDAL installed? If it is, try setting 
GDAL_LIBRARY_PATH in your settings.
Run Code Online (Sandbox Code Playgroud)

这是我的要求.txt:

dj-database-url==0.4.1
Django==1.11.5
gunicorn==19.6.0
psycopg2==2.6.2
pytz==2017.2
whitenoise==3.2
Run Code Online (Sandbox Code Playgroud)

我在这里唯一的异常是我使用的是Django 1.11.5而不是默认的Heroku的Django项目模板,即1.11.1.这是为了解决一个问题,使项目无法正常工作.

Procfile是:

web: …
Run Code Online (Sandbox Code Playgroud)

python django heroku gdal geodjango

3
推荐指数
1
解决办法
977
查看次数

保存后Powershell脚本不会更新

我有一个Powershell脚本,我正在Powershell ISE中工作,我正在尝试运行它,因为我一直在努力确保更改有效.当我进行更改时,我保存它,运行"Import-Module Start-Applications"以启用最新版本,然后运行"Start-Applications".当我这样做时,我收到了我删除的代码的错误消息,表明它可能没有像我想象的那样更新.我这样做了吗?

powershell powershell-ise

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

C++将向量传递给排序函数实际上并不对它进行排序

我有一个函数原型:

void bubbleSort(std::vector<float>);
Run Code Online (Sandbox Code Playgroud)

和实施:

void bubbleSort(std::vector<float> inputVector)
{
    std::cout << "Executing bubble sort." << std::endl;
    int pass;
    int comparisons;
    float hold;

    for (pass = 1; pass < VECSIZE; pass++)
    {
        for (comparisons = 0; comparisons < VECSIZE - 1; comparisons++)
        {
            if (inputVector[comparisons] > inputVector[VECSIZE + 1])
            {
                hold = inputVector[comparisons];
                inputVector[comparisons] = inputVector[comparisons + 1];
                inputVector[comparisons + 1] = hold;
            }
        }
    }

    for (int i = 0; i < VECSIZE; i+=10)
    {
        std::cout << "Element " << i …
Run Code Online (Sandbox Code Playgroud)

c++ sorting vector

0
推荐指数
1
解决办法
935
查看次数